为了账号安全,请及时绑定邮箱和手机立即绑定

在 Visual Studio 中使用另一个项目的对象

在 Visual Studio 中使用另一个项目的对象

C#
肥皂起泡泡 2023-04-16 10:08:10
我想从窗口代码中发送或能够访问数据库,所以我想在主窗口上添加一个构造函数并从 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 的构造函数?!


查看完整回答
反对 回复 2023-04-16
  • 1 回答
  • 0 关注
  • 97 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信