我想從DataRow對象創建一個對象,可以通過遍歷Datarow對象來完成。但這裏的約束是DataRow列不固定。 DataRow可以有任何列的變化。我不能根據ColumnName遍歷DataRow,因爲我不知道哪些所有列將在數據行中。從Datarow創建對象
例如我有一個類
class Abc
{
string attrib1;
string attrib2;
string attrib2;
public Abc(DataRow dr)
{
attrib1 = dr["attrib1"].ToString();
attrib2 = dr["attrib2"].ToString();
attrib3 = dr["attrib3"].ToString();
}
}
這將正常工作時,DataRow對象有三個列。 但如果不是,那麼這將拋出異常
請幫助我。
我已經在構造函數中使用如下
class Abc
{
string attrib1;
string attrib2;
string attrib2;
public Abc(DataRow dr)
{
foreach (System.Data.DataColumn dc in record.Columns)
{
switch (dc.ColumnName)
{
case "attrib1" :
attrib1 = dr["attrib1"].ToString();
break;
case "attrib2" :
attrib2 = dr["attrib2"].ToString();
break;
case "attrib2" :
attrib3 = dr["attrib3"].ToString();
break;
}
}
}
}
雖然它工作正常開關的情況下嘗試了,我想知道這種做法是否是好的。
請幫忙解決這個問題
謝謝
感謝您對一個對象數組你回答它真的更好,使用開關盒 – KB5
不客氣。 – nnhthuan