c# маппинг oracle-таблиц master-detail

Есть две таблицы Master и Detail, связаны между собой один ко многим.
Для них есть соответствующие DTO классы.
Причем у Master класса есть поле, содержащее список объектов из таблицы Detail:

public class Master
    {
        public int Id { get; set; }
        public DateTime Date { get; set; }
        public List<Detail> listDetail
    }

    public class Detail
    {
        public string sql_text { get; set; }
    }


Произвожу маппинг содержимого таблиц в объекты этих классов.
С Master все понятно. Делаю один селект по всем нужным записям таблицы Master - заполняю объекты класса Master.

А вот чтобы заполнить список дочерней таблицы приходится вызывать на каждую запись Master'а select из таблицы Detail (это select может не вернуть ни одной записи, может одну, или несколько).

Что получается накладно по времени.
Как можно оптимизировать?

Сейчас для маппинга использую ORMLite.
  • Вопрос задан
  • 3392 просмотра
Пригласить эксперта
Ответы на вопрос 3
ad1Dima
@ad1Dima
А сделать в базе Left Join и потом в оперативке уже собрать это в нужную структуру не вариант?
Ответ написан
Комментировать
artzub
@artzub
Программист
Поставьте ODAC он включает в себя EF для oracle.
Ответ написан
mgramin
@mgramin Автор вопроса
Вариант, но думал найти что-нибудь автоматическое.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы