Использование объекта из другого проекта в Visual Studio - PullRequest
0 голосов
/ 17 июня 2019

Я хочу отправить или получить доступ к базе данных из кода окна, поэтому я думал о добавлении конструктора в главное окно и отправке контекста из класса Program, где я показываю свое окно и загружаю базу данных , но контекст находится в проекте программы, и я уже ссылаюсь на проект окна, поэтому у меня не может быть циклических ссылок

У меня есть два проекта, один для 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 Ответ

0 голосов
/ 17 июня 2019

Ваш программный класс обычно должен быть частью вашего GUI-проекта (который также имеет класс окна). Тогда в вашем GUI-проекте вам нужно только ссылаться на db (context), а не наоборот, что удаляет циклическую зависимость.

Кроме того, вы вызываете конструктор MainWindow с параметром db (экземпляр ProgramControl; entityContext), которого нет в вашем коде?!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...