C#中獲取DataTable某一列的值轉換為集合
阿新 • • 發佈:2020-04-21
1、直接使用
List<int> lstID = (from d in dt.AsEnumerable() select d.Field<int>("ID")).ToList();
//使用orderby關鍵字進行排序
List<string> listJobTitle = (from d in dvBaseInfo.ToTable().AsEnumerable() orderby d.Field<int>("OrderNo") select d.Field<string>("VName")).ToList();
2、封裝方法
/// <summary>
/// 獲取某一列的所有值
/// </summary>
/// <typeparam name="T">列資料型別</typeparam>
/// <param name="dtSource">資料表</param>
/// <param name="filedName">列名</param>
/// <returns></returns>
public static List<T> GetColumnValues<T>(DataTable dtSource,string filedName)
{
return (from r in dtSource.AsEnumerable() select r.Field<T>("ID")).ToList<T>();
}
方法呼叫:
獲取欄位ID的所有值
DataTable dt = new DataTable();
List<int> ids= DataTablePro.GetColumnValues<int>(dt,"ID");