比方說,我們有一個類泛型列表/子表處理
class ComplexCls
{
public int Fld1;
public string Fld2;
//could be more fields
}
class Cls
{
public int SomeField;
}
,然後一些代碼
class ComplexClsList: List<ComplexCls>;
ComplexClsList myComplexList;
// fill myComplexList
// same for Cls
class ClsList : List<Cls>;
ClsList myClsList;
我們要填充從myComplexList myClsList,像(僞)的東西:
foreach Complexitem in myComplexList
{
Cls ClsItem = new Cls();
ClsItem.SomeField = ComplexItem.Fld1;
}
執行此操作的代碼很簡單,將放入myClsList的某些方法中。 但是我想爲通用ComplexCls儘可能通用地設計它。 請注意,在使用此代碼時,確切的ComplexCls是已知的,只有shd算法是通用的。
我知道它可以使用(直接)反射來完成,但是還有其他解決方案嗎? 讓我知道,如果問題不夠清楚。 (可能不是)。編輯]基本上,我需要的是:有myClsList,我需要指定一個DataSource(ComplexClsList)和一個字段從該數據源(Fld1)將用於填充我的SomeField
聽起來像你正在尋找AutoMapper – SLaks
當你從'List'繼承時,你已經拿走了通用解決方案的能力。我想我們需要更多的細節.. –
我剛剛編輯了我的問題,請再讀一遍。你們很快! – user628661