У меня есть что-то вроде этого в реализации IRepository в Linq to Sql:
var newlist = from h in list where h.StringProp1 == "1"
select new MyBusinessBO{
firstProp = h.StringProp1,
secondProp = h.StringProp2
};
Проецирование в MyBusinessBO не сложно, но когда у Business Object есть много свойств, код проекции становится очень длинным. Кроме того, поскольку проекция может происходить в нескольких местах в репозитории, мы нарушаем принцип СУХОГО.
Есть ли способ абстрагировать проекцию или заменить ее делегатом?
т.е. заменить код
firstProp = h.StringProp1,
secondProp = h.StringProp2
с чем-то многоразовым?