Можно ли загрузить частичные схемы объектов из существующей базы данных, используя .Net EF Core? - PullRequest
1 голос
/ 06 ноября 2019

У меня есть таблица БД, созданная с помощью .net ef по следующей схеме:

Задача (идентификатор, название, описание, статус)

В настоящее время у меня есть сервер, который полностью использует эту схемуи имеет класс, который представляет этот объект

public class Task {

    [Key]
    public Guid Id { get; set; }

    public string Title { get; set; }

    public string Description { get; set; }

    public string Status { get; set; }

}

Теперь я хочу настроить другой отдельный сервер статистики в другом проекте, для которого требуется только Id и Status ( только для чтения )

public class Task {

    [Key]
    public Guid Id { get; set; }

    public string Status { get; set; }

}

Можно ли связать контекст с этим объектом, который не представляет полную схему с моей существующей таблицей БД, используя ядро ​​.net ef?

Редактировать: я добавил изображение для представлениятребуемая ситуация лучше enter image description here

Ответы [ 2 ]

2 голосов
/ 06 ноября 2019

Если я правильно вас понимаю, у вас есть одна база данных и два проекта, которые работают с этой базой данных. Первый проект обрабатывает задачи, а второй проект получает статистику о задачах. В этом случае лучше объединить два проекта в решение. В решении вы должны извлечь библиотеку классов с вашими сущностями (доменными моделями). В качестве примера ваших сущностей:

public class Task {

    [Key]
    public Guid Id { get; set; }

    public string Title { get; set; }

    public string Description { get; set; }

    public string Status { get; set; }

}

Также вы должны извлечь слой доступа (dbContext, dbSet, репозитории и т. Д.) В отдельную библиотеку классов.

Оба проекта должны использовать эти две библиотеки. Каждый проект должен иметь собственный набор классов представлений. Пример класса представления:

public class Task {

    public Guid Id { get; set; }

    public string Status { get; set; }

}

Вы можете отобразить модель домена (сущность), чтобы просмотреть модель самостоятельно или использовать что-то вроде Automapper (второй вариант лучше).

1 голос
/ 07 ноября 2019

Вы можете создать представление на сервере SQL, которое представляет именно эти два поля из таблицы задач, и сопоставить его с таблицей статистики.

...