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 глубокий клон в отличие от типов