C#中DataTable的創(chuàng)建與遍歷實現(xiàn)
更新時間:2021年02月26日 10:17:47 作者:pan_junbiao
這篇文章主要介紹了C#中DataTable的創(chuàng)建與遍歷實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
1、創(chuàng)建DataTable對象
/// <summary> /// 創(chuàng)建DataTable對象 /// </summary> public static DataTable CreateDataTable() { //創(chuàng)建DataTable DataTable dt = new DataTable("NewDt"); //創(chuàng)建自增長的ID列 DataColumn dc = dt.Columns.Add("ID", Type.GetType("System.Int32")); dc.AutoIncrement = true; //自動增加 dc.AutoIncrementSeed = 1; //起始為1 dc.AutoIncrementStep = 1; //步長為1 dc.AllowDBNull = false; //非空 //創(chuàng)建其它列表 dt.Columns.Add(new DataColumn("Name", Type.GetType("System.String"))); dt.Columns.Add(new DataColumn("Age", Type.GetType("System.Int32"))); dt.Columns.Add(new DataColumn("Score", Type.GetType("System.Decimal"))); dt.Columns.Add(new DataColumn("CreateTime", Type.GetType("System.DateTime"))); //創(chuàng)建數(shù)據(jù) DataRow dr = dt.NewRow(); dr["Name"] = "張三"; dr["Age"] = 28; dr["Score"] = 85.5; dr["CreateTime"] = DateTime.Now; dt.Rows.Add(dr); dr = dt.NewRow(); dr["Name"] = "李四"; dr["Age"] = 24; dr["Score"] = 72; dr["CreateTime"] = DateTime.Now; dt.Rows.Add(dr); dr = dt.NewRow(); dr["Name"] = "王五"; dr["Age"] = 36; dr["Score"] = 63.5; dr["CreateTime"] = DateTime.Now; dt.Rows.Add(dr); return dt; }
2、遍歷DataTable對象
/// <summary> /// 遍歷DataTable對象,轉(zhuǎn)換成List對象 /// </summary> public static List<UserInfo> TraverseDataTable(DataTable dt) { List<UserInfo> userList = new List<UserInfo>(); //判斷DataTable是否為空 if (dt == null || dt.Rows.Count == 0) { return null; } //遍歷DataTable對象,轉(zhuǎn)換成List foreach (DataRow row in dt.Rows) { UserInfo user = new UserInfo(); if (dt.Columns.Contains("ID") && !Convert.IsDBNull(row["ID"])) user.ID = Convert.ToInt32(row["ID"]); if (dt.Columns.Contains("Name") && !Convert.IsDBNull(row["Name"])) user.Name = Convert.ToString(row["Name"]); if (dt.Columns.Contains("Age") && !Convert.IsDBNull(row["Age"])) user.Age = Convert.ToInt32(row["Age"]); if (dt.Columns.Contains("Score") && !Convert.IsDBNull(row["Score"])) user.Score = Convert.ToDouble(row["Score"]); if (dt.Columns.Contains("CreateTime") && !Convert.IsDBNull(row["CreateTime"])) user.CreateTime = Convert.ToDateTime(row["CreateTime"]); userList.Add(user); } return userList; }
其它代碼:
/// <summary> /// 用戶信息類 /// </summary> public class UserInfo { /// <summary> /// 編號 /// </summary> public int ID { get; set; } /// <summary> /// 名稱 /// </summary> public string Name { get; set; } /// <summary> /// 年齡 /// </summary> public int Age { get; set; } /// <summary> /// 成績 /// </summary> public double Score { get; set; } /// <summary> /// 創(chuàng)建時間 /// </summary> public DateTime CreateTime { get; set; } }
到此這篇關(guān)于C#中DataTable的創(chuàng)建與遍歷實現(xiàn)的文章就介紹到這了,更多相關(guān)C# DataTable創(chuàng)建與遍歷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mongodb在CSharp里實現(xiàn)Aggregate實例
本篇文章主要介紹了Mongodb在CSharp里實現(xiàn)Aggregate實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05C#/VB.NET?實現(xiàn)彩色PDF轉(zhuǎn)為灰度PDF
本文以C#代碼為例介紹如何實現(xiàn)將彩色PDF文件轉(zhuǎn)為灰度(黑白)的PDF文件,即將PDF文檔里面的彩色圖片或者文字等通過調(diào)用方法轉(zhuǎn)為文檔頁面為灰色調(diào)、無彩色效果的文檔??靵砀S小編一起學習吧2021-11-11