實體類與DataTable的轉化 適用任意型別

2021-07-05 03:03:02 字數 1402 閱讀 3000

/// /// datatable與實體類互相轉換

///

/// 實體類

public class modelhandlerwhere t : new()

else

}/// /// 填充物件列表:用dataset的第index個表填充實體類

///

public listfillmodel(dataset ds, int index)

else

}/// /// 填充物件列表:用datatable填充實體類

///

public listfillmodel(datatable dt)

listmodellist = new list();

foreach (datarow dr in dt.rows)

modellist.add(model);

}return modellist;

}/// /// 填充物件:用datarow填充實體類

///

public t fillmodel(datarow dr)

//t model = (t)activator.createinstance(typeof(t));

t model = new t();

for (int i = 0; i < dr.table.columns.count; i++)

return model;

}#endregion

#region 實體類轉換成datatable

/// /// 實體類轉換成dataset

///

/// 實體類列表

///

public dataset filldataset(listmodellist)

else

}/// /// 實體類轉換成datatable

///

/// 實體類列表

///

public datatable filldatatable(listmodellist)

datatable dt = createdata(modellist[0]);

foreach(t model in modellist)

dt.rows.add(datarow);

}return dt;

}/// /// 根據實體類得到表結構

///

/// 實體類

///

private datatable createdata(t model)

return datatable;

}#endregion

}

可復用,可針對不同表結構,不同實體類。不存在硬編碼的現象,值得學習

DataTable與實體類互相轉換

datatable與實體類互相轉換 實體類 public class modelhandlerwhere t new else 填充物件列表 用dataset的第index個表填充實體類 public listfillmodel dataset ds,int index else 填充物件列表 用d...

DataTable與實體類互相轉換

datatable與實體類互相轉換 datatable與實體類互相轉換 實體類 public class modelhandlerwhere t new else 填充物件列表 用dataset的第index個表填充實體類 public listfillmodel dataset ds,int in...

實體類和DataTable的轉換

最近在專案中在資料庫查詢的時間,總是要用到資料表到實體類物件列表的轉化,自己封裝了乙個轉換的方法,用起來還比較方便,記下來,以後可以重複使用,原理就主要是利用反射,當然有更好的orm框架可以實現,主要的原因就是我這裡沒有用orm。資料表轉換類 public class dbtableconverto...