C# ValueInjecter: отображение всего объекта Graph

Я только начал использовать ValueInjecter для своих сопоставлений сущностей (DTO <-> Entity). Вот мой DTO:

public class IncidentDTO
{
    int ID { get; set; }
    string Name { get; set; }
    AgencyDTO agencyDTO { get; set; }
}

public class AgencyDTO
{
    int ID { get; set; }
    string Name { get; set; }
    List<IncidentTypeDTO> incidentTypeDTOList { get; set; }
}

public class IncidentTypeDTO
{
    int ID { get; set; }
    string TypeName { get; set; }
}

Вот мои классы прокси NHibernate:

 public class Incident
{
    int ID { get; set; }
    string Name { get; set; }
    Agency agency { get; set; }
}

public class Agency
{
    int ID { get; set; }
    string Name { get; set; }
}

public class IncidentType
{
    int ID { get; set; }
    string TypeName { get; set; }
}

public class AgencyIncidentType
{
    int ID { get; set; }
    Agency agency { get; set; }
    IncidentType incidentType { get; set; }
}

Теперь мне нужно запросить IncidentDTO из репозитория. Запрос репозитория Incident & AgencyIncidentType таблицы из базы данных и карты Incident -> IncidentDTO используя ValueInjecter и вернуть IncidentDTO,

Каков наилучший способ сделать вышеуказанное сопоставление с помощью ValueInjecter??

Спасибо, Пратик

1 ответ

Решение

Если вы хотите на карту Incident в IncidentDTO сохраняя и картируя Agency объект в agency собственность (для AgencyDTO) из Incident экземпляр я бы предложил переименовать agencyDTO собственность на agency в вашем IncidentDTO и затем используйте твик к образцу CloneInjection из документации Value Injector, как описано здесь: omu.valueinjecter глубокий клон в отличие от типов

Другие вопросы по тегам