Я читал об AutoMapper из-за ответа на один из моих предыдущих вопросов здесь.
Здесь сказано, что AutoMapper сглаживает сложные модели доменов, но мне нужно что-то, что делает обратное. Мне нужно связать мои модели представления (плоские модели предметной области) со сложными моделями предметной области, чтобы я мог быстро преобразовать модель представления в модель предметной области.
Есть ли что-нибудь похожее на AutoMapper, которое принимает представление? модель и превращает ее в сложную модель предметной области?
AutoMapper сглаживает модели доменов, но делает ли это наоборот? Если нет, то что?
comment
вы можете сделать это с помощью ValueInjecter valueinjecter.codeplex.com
- person Omu   schedule 10.06.2010
Ответы (3)
Не совсем, потому что для того, чтобы быть полезным, он должен быть чрезвычайно условным. При сглаживании легко различить шаблоны, но наоборот... слишком много пользовательской логики.
person
Matt Hinze
schedule
01.08.2009
не только это, но кажется, что двухстороннее сопоставление является сомнительной практикой: in-automapper/" rel="nofollow noreferrer">lostechies.com/jimmybogard/2009/09/18/.
- person gabe; 18.01.2012
Вы делаете!. Вы создаете метод MapToModel, в котором вы выполняете правостороннее/левостороннее кодирование и синхронизируете их вместе.
public MyModel MapToModel(MyViewModelForm vmf)
{
//new up MyModel model;
model.foo = vmf.foo;
return model;
}
Если бы приложения программировались сами по себе, чем бы мы зарабатывали на жизнь...?
person
James Fleming
schedule
19.01.2010
это делает ValueInjecter, и его довольно легко использовать:
//flatenning
personDto.InjectFrom<FlatValueInjection>(person);
//unflattening
person.InjectFrom<UnflatValueInjection>(personDto);
и
//this is just mapping without flattening/unflattening
foo.InjectFrom(bar)
person
Omu
schedule
10.06.2010