国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

c# datatable用法總結

來源:懂視網 責編:小采 時間:2020-11-27 22:42:59
文檔

c# datatable用法總結

c# datatable用法總結:一、DataTable簡介 (1)構造函數 DataTable() 不帶參數初始化DataTable 類的新實例。 DataTable(string tableName) 用指定的表名初始化DataTable 類的新實例。 DataTable(string tableName, string tableNamespace)
推薦度:
導讀c# datatable用法總結:一、DataTable簡介 (1)構造函數 DataTable() 不帶參數初始化DataTable 類的新實例。 DataTable(string tableName) 用指定的表名初始化DataTable 類的新實例。 DataTable(string tableName, string tableNamespace)

一、DataTable簡介
(1)構造函數
DataTable() 不帶參數初始化DataTable 類的新實例。
DataTable(string tableName) 用指定的表名初始化DataTable 類的新實例。
DataTable(string tableName, string tableNamespace) 用指定的表名和命名空間初始化DataTable 類的新實例。
(2) 常用屬性
CaseSensitive 指示表中的字符串比較是否區分大小寫。
ChildRelations 獲取此DataTable 的子關系的集合。
Columns 獲取屬于該表的列的集合。
Constraints 獲取由該表維護的約束的集合。
DataSet 獲取此表所屬的DataSet。DataSet相關信息,可見我以前的一篇文章《數據訪問(2)-DataSet》
DefaultView 獲取可能包括篩選視圖或游標位置的表的自定義視圖。
HasErrors 獲取一個值,該值指示該表所屬的DataSet 的任何表的任何行中是否有錯誤。
MinimumCapacity 獲取或設置該表最初的起始大小。該表中行的最初起始大小。默認值為 50。
Rows 獲取屬于該表的行的集合。
TableName 獲取或設置DataTable 的名稱。
(3)常用方法
AcceptChanges() 提交自上次調用AcceptChanges() 以來對該表進行的所有更改。
BeginInit() 開始初始化在窗體上使用或由另一個組件使用的DataTable。初始化發生在運行時。
Clear() 清除所有數據的DataTable。
Clone() 克隆DataTable 的結構,包括所有DataTable 架構和約束。
EndInit() 結束在窗體上使用或由另一個組件使用的DataTable 的初始化。初始化發生在運行時。
ImportRow(DataRow row) 將DataRow 復制到DataTable 中,保留任何屬性設置以及初始值和當前值。
Merge(DataTable table) 將指定的DataTable 與當前的DataTable 合并。
NewRow() 創建與該表具有相同架構的新DataRow。

二、DataTable使用技巧
(1)Create a DataTable
DataTable dt = new DataTable("Table_AX");
(2)Add columns for DataTable
//Method 1
dt.Columns.Add("column0", System.Type.GetType("System.String"));
//Method 2
DataColumn dc = new DataColumn("column1", System.Type.GetType("System.Boolean"));
dt.Columns.Add(dc);
(3)Add rows for DataTable
//Initialize the row
DataRow dr = dt.NewRow();
dr["column0"] = "AX";
dr["column1"] = true;
dt.Rows.Add(dr);
//Doesn't initialize the row
DataRow dr1 = dt.NewRow();
dt.Rows.Add(dr1);
(4)Select row
//Search the second row 如果沒有賦值,則用is null來select
DataRow[] drs = dt.Select("column1 is null");
DataRow[] drss = dt.Select("column0 = 'AX'");
(5)Copy DataTable include data
DataTable dtNew = dt.Copy();
(6)Copy DataTable only scheme
DataTable dtOnlyScheme = dt.Clone();
(7)Operate one row
//對dt的操作
//Method 1
DataRow drOperate = dt.Rows[0];
drOperate["column0"] = "AXzhz";
drOperate["column1"] = false;
//Method 2
drOperate[0] = "AXzhz";
drOperate[1] = false;
//Method 3
dt.Rows[0]["column0"] = "AXzhz";
dt.Rows[0]["column1"] = false;
//Method 4
dt.Rows[0][0] = "AXzhz";
dt.Rows[0][1] = false;
(8)Evaluate another DataTable's row to current Datatable
dtOnlyScheme.Rows.Add(dt.Rows[0].ItemArray);
(9)Convert to string
System.IO.StringWriter sw = new System.IO.StringWriter();
System.Xml.XmlTextWriter xw = new System.Xml.XmlTextWriter(sw);
dt.WriteXml(xw);
string s = sw.ToString();
(10)Filter DataTable
dt.DefaultView.RowFilter = "column1 <> true";
dt.DefaultView.RowFilter = "column1 = true";
(11)Sort row
dt.DefaultView.Sort = "ID ,Name ASC";
dt=dt.DefaultView.ToTable();
(12)Bind DataTable
//綁定的其實是DefaultView
gvTestDataTable.DataSource = dt;
gvTestDataTable.DataBind();
(13)judge the DataTable's Column name is a string
//判斷一個字符串是否為DataTable的列名
dtInfo.Columns.Contains("AX");
(14)DataTable convert to XML and XML convert to DataTable
代碼如下:


protected void Page_Load(object sender, EventArgs e)
{
DataTable dt_AX = new DataTable();
//dt_AX.Columns.Add("Sex", typeof(System.Boolean));
//DataRow dr = dt_AX.NewRow();
//dr["Sex"] = true;
//dt_AX.Rows.Add(dr);
string xml=ConvertBetweenDataTableAndXML_AX(dt_AX);
DataTable dt = ConvertBetweenDataTableAndXML_AX(xml);
}
public string ConvertBetweenDataTableAndXML_AX(DataTable dtNeedCoveret)
{
System.IO.TextWriter tw = new System.IO.StringWriter();
//if TableName is empty, WriteXml() will throw Exception.
dtNeedCoveret.TableName=dtNeedCoveret.TableName.Length==0?"Table_AX":dtNeedCoveret.TableName;
dtNeedCoveret.WriteXml(tw);
dtNeedCoveret.WriteXmlSchema(tw);
return tw.ToString();
}
public DataTable ConvertBetweenDataTableAndXML_AX(string xml)
{
System.IO.TextReader trDataTable = new System.IO.StringReader(xml.Substring(0, xml.IndexOf("<?xml")));
System.IO.TextReader trSchema = new System.IO.StringReader(xml.Substring(xml.IndexOf("<?xml")));
DataTable dtReturn = new DataTable();
dtReturn.ReadXmlSchema(trSchema);
dtReturn.ReadXml(trDataTable);
return dtReturn;
}

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

c# datatable用法總結

c# datatable用法總結:一、DataTable簡介 (1)構造函數 DataTable() 不帶參數初始化DataTable 類的新實例。 DataTable(string tableName) 用指定的表名初始化DataTable 類的新實例。 DataTable(string tableName, string tableNamespace)
推薦度:
標簽: 用法 c# datatable
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 欧美一区二区三区不卡免费 | 毛片一区 | 久久精品国产精品亚洲综合 | 日韩欧美在线综合 | 欧美日韩在线亚洲国产人 | 国产精品久久久久久久久久久久 | 亚欧精品在线观看 | 国产视频一区二区三区四区 | 国内精品自产拍在线观看91 | 国产一区亚洲二区三区毛片 | 亚洲区中文字幕 | 精品久久久一二三区 | 一级黄免费| 亚洲一级二级 | 日韩欧美亚洲视频 | 国产成人免费视频精品一区二区 | 四虎精品 | 久久国产精品成人免费古装 | 免费看成人国产一区二区三区 | 国产欧美另类久久精品91 | 亚洲精品视频免费在线观看 | 欧美系列在线 | 91原创国产 | 久久国产精品视频 | 国产精品久久久久久一级毛片 | 国产毛片a | 亚洲入口 | 国产精品久久久久久一区二区三区 | 免费国产黄网站在线观看视频 | 欧美专区在线观看 | 韩国精品欧美一区二区三区 | 久久亚洲伊人中字综合精品 | 国产亚洲欧美日韩综合另类 | 国产精品成人麻豆专区 | 无遮挡一级毛片 | 在线观看国产精品入口 | 久久久91精品国产一区二区 | 午夜视频在线观看免费视频 | 精品一区二区三区免费毛片爱 | 欧美日韩国产亚洲人成 | 亚洲欧美中文字幕 |