Методы в классах моделей EF

В базе данных PostgreSQL есть таблица Birds с полями: id, name. Проект .NET Core с EF (DB first). Сгенерировали класс Birds в EF и теперь вопрос: как можно реализовать интерфейс IFly в этом классе Bird, нужно дополнительный класс (слой) создавать?


Ответы (1 шт):

Автор решения: Alexander Petrov

Сгенерированный класс имеет модификатор partial. Он позволяет добавлять в класс дополнительные члены в другом месте, не трогая сгенерированный код.

Добавляете новый файл с таким же точно определением класса Birds: в том же пространстве имён, с модификатором partial. В нём реализуете ваш интерфейс и делаете любые другие необходимые изменения.

Получается один класс, разбитый на два (или более) файлов.

Где его разместить? Сгенерированные файлы должны быть в одной папке, выделенной для них. Модифицированные вручную - в другой. В том же проекте, в том же слое.

Это не добавляет новый слой.

→ Ссылка