程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#中DataTable與實體集合通用轉換(使用擴展方法)

C#中DataTable與實體集合通用轉換(使用擴展方法)

編輯:C#入門知識

本案例提供了:把DataRow轉換為單個實體、dataTable轉換為List泛型支持時間格式轉換。

下文的方法都是擴展方法。擴展方法要求寫在靜態類中,方法也要靜態。

  • (第一個參數類型也稱為擴展類型,即指方法對這個類型進行擴展)

 

 

1.將DataRow轉換為實體

 
         
         
         
          T ToModel<T>( DataRow dr)  T : , ToModel<T>(dr,


2.將DataRow轉換為實體可設置時間格式轉換

         
         
         
         
         
         
          T ToModel<T>( DataRow dr,  dateTimeToString)  T : ,  (dr !=  ToList<T> 


3.將DataTable轉換為實體

        
         
         
         
         
          List<T> ToList<T>( DataTable dt,  dateTimeToString)  T : , <T> list =  List<T> (dt != <PropertyInfo> infos =  List<PropertyInfo><PropertyInfo>((T).GetProperties(), p => (dt.Columns.Contains(p.Name) == 
<T>


4.轉換實現代碼

     SetList<T>(List<T> list, List<PropertyInfo> infos, DataTable dt,  dateTimeToString)  T : ,  (DataRow dr = => (dr[p.Name] != DBNull.Value)
 tempValue = (dr[p.Name].GetType() == (DateTime) && dateTimeToString == )
=);

        }

 

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved