我想从窗口代码中发送或能够访问数据库,所以我想在主窗口上添加一个构造函数并从 Program 类发送上下文,我在其中显示我的窗口并加载数据库,但是context在程序项目中,而我已经引用了window项目,所以不能循环引用我有两个项目,一个用于 GUI,另一个包含所有类,包括实体框架数据库的上下文class ProgramControl: DbContext{ public DbSet<Asignaturas> Asigns { get; set; } public DbSet<Alumno> Alumnos { get; set; } public DbSet<Profesor> Profes { get; set; } public DbSet<Aula> Aulas { get; set; }}public class Program{ public static void Main(string[] args) { using (var db = new ProgramControl()) { MainWindow mainWindow = new MainWindow(); mainWindow.Show(); } }}public partial class MainWindow : Window{ public static MainWindow AppWindow; public MainWindow() { InitializeComponent(); AppWindow = this; } private void AlumnoButton_Click(object sender, RoutedEventArgs e) { Window1 window1 = new Window1(); window1.Show(); } private void ExitButton_Click(object sender, RoutedEventArgs e) { Close(); } private void AsignaturasButton_Click(object sender, RoutedEventArgs e) { Window2 window2 = new Window2(); window2.Show(); } private void ProfesorButton_Click(object sender, RoutedEventArgs e) { Window3 window3 = new Window3(); window3.Show(); }}
1 回答
明月笑刀无情
TA贡献1828条经验 获得超4个赞
您的程序类通常应该是您的 GUI 项目(也有窗口类)的一部分。然后在您的 GUI 项目中,您只需引用数据库(上下文),反之亦然,这样就消除了循环依赖。
此外,您使用不在您的代码中的参数 db(ProgramControl 的实例;entityContext)调用 MainWindow 的构造函数?!
- 1 回答
- 0 关注
- 147 浏览
添加回答
举报
0/150
提交
取消