Мой вопрос может быть глупым, но я почти уверен, что пропускаю очень важную часть проблемы. должен сделать какой-то объект для сопоставления объектов (между классами домена, используемыми в проекте C #, и классами, которые отправляются на флэш-клиенты).
Моим первым выбором был Automapper. Но у меня были некоторые проблемы с ним (вложенные свойства, а не определенный конструктор без параметров Оказывается, не так просто отобразить действительно сложный тип с помощью automapper.
Тогда мой вопрос: почему бы не реализовать такие методы, как:
ClassA GetClassAByClassB(ClassB pObj)
{
ClassA objA = new ClassA();
objA.Prop1 = pObj.Prop1;
objA.NestedType.Prop2 = pObj.Prop2;
//....Some more.....
return objA;
}
Он имеет точно такой же уровень гибкости, как отображение, выполненное с помощью Automapper. Вам по-прежнему необходимо указать, какие свойства исходного объекта копируются в какие свойства объекта назначения. Вы просто делаете это, используя '=', а не лямбда-выражение.
Но если вы что-то измените в своих доменных классах, вам все равно придется изменить эту часть «сопоставления». Итак, что является главным, что должно убедить меня использовать Automapper (как я сказал в начале, я почти уверен, что упускаю что-то важное).