Я пытаюсь реорганизовать некоторые методы, чтобы не повторяться в отображениях объектов.Функции изложены в этом SO вопросе .
У меня есть универсальный метод, который вызывает одну из 4 хранимых процедур, которые возвращают результаты с одинаковыми полями, только с разными подмножествами данных.linq2sql генерирует разные объекты Result для каждой хранимой процедуры.
Существует ли способ общего сопоставления результатов с моим объектом-сервером?Требуется ли отражение?
private static List<DistroHeader> getHeaders<T>(Func<IEnumerable<T>> getHeaders)
{
List<MyObj> myObj = new List<MyObj>();
var result = from a in getMyObjData()
select a;
foreach (var row in result)
{
myObj.Add(new MyObj()
{
Id = row.id,
Description = row.descr,
// ...etc
// These fields are shared across the result types...
// is there a way to make the compiler recognize that?
});
}
}