Преобразовать результат сущности в другую модельC#

Место общения программистов C#
Ответить
Anonymous
 Преобразовать результат сущности в другую модель

Сообщение Anonymous »


Я не знаю, как это хорошо описать...

Я хочу использовать модель, унаследованную от моей сущности DbSet, не выполняя каждый раз сопоставление?

Набор базы данных объектов

public DbSet MyDataTable {get; набор; } Модель

публичный класс MyDataTable { общественный ИНТ Id {получить; набор; } публичная строка dataField1 {get; набор; } } Модель, которую я хотел бы использовать в своем контроллере вместо MyDataTable:

публичный класс MyData: MyDataTable { публичная строка dataField2 {get; набор; } общедоступные логические данныеCalc() { // ... } } Код моего контроллера:

публичный класс MyController { частный только для чтения DbContext _context; общедоступный MyController (частный DbContext только для чтения _context;) { _контекст = контекст; } общедоступная асинхронная задача> GetData { // Это работает, если это List // Простой способ получить его в List? // Или я получаю List, а затем сопоставляю MyDataTable с MyData List dataList = ждут _context.MyDataTable .Select(s => s).ToListAsync(); } } Обычно я просто сопоставляю MyDataTable с MyData вручную или использую AutoMapper.

Есть ли более продвинутый способ сделать это?

Удачи!

Дополнительные разъяснения:

Извините, если вопрос покажется глупым! Я заметил, что получаю данные из базы данных в одной модели MyDataTable, а затем сопоставляю их с MyData при каждом вызове. Существует много похожего кода, и он не подтверждает СУХОЙ «Не повторяйся».

Есть ли другой способ структурировать это?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»