總結(jié).NET開發(fā)中ADO.NET的應用(4)_.Net教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:關于Gridview的多種使用方法總結(jié)asp.net中 Gridview的多種使用方法總結(jié),具體如下面 截圖,并包括詳細源代碼注釋,需要的請下載。 1:在Gridview中無須編寫后臺代碼,直接實現(xiàn)增除刪改 2:在Gridview中添加新記錄 3:在Gridview中實現(xiàn)編輯和更新操作 4:在Gridview中實現(xiàn)一次性更新所有記錄
如果不是通過vs.net的可視化數(shù)據(jù)設計器新建DataAdapter,沒有自動生成SelectCommand、InsertCommand、UpdateCommand、DeleteCommand這四個命令,那么就可能需要自己寫InsertCommand、UpdateCommand、DeleteCommand命令,有一種情況就是當SelectCommand至少返回一個主鍵列或唯一的列時,可以通過SqlCommandBuilder來自動根據(jù)SelectCommand命令來自動生成另外三個更新命令,例如:
SqlConnection myConn = new SqlConnection(myConnection);
SqlDataAdapter myDataAdapter = new SqlDataAdapter();
myDataAdapter.SelectCommand = new SqlCommand(mySelectQuery, myConn);
//建立DataAdapter的SelectCommand命令
SqlCommandBuilder custCB = new SqlCommandBuilder(myDataAdapter);
//建立此DataAdapter的CommandBuilder,
//這樣系統(tǒng)就會給此DataAdapter自動生成
InsertCommand、UpdateCommand、DeleteCommand三個命令。
否則,要用DataAdapter.UpDate()方法更新數(shù)據(jù)庫就要自己寫InsertCommand、UpdateCommand、DeleteCommand這三個命令,可以參考上面給出的vs.net自動生成的InsertCommand命令的寫法。
◆ 數(shù)據(jù)綁定的同步
WinForm中很多控件都可以與數(shù)據(jù)源綁定,綁定又分兩種情況:
簡單數(shù)據(jù)綁定
簡單數(shù)據(jù)綁定指將一個控件綁定到單個數(shù)據(jù)元素(如數(shù)據(jù)集表的列中的值)的能力。這是用于控件,如 TextBox 控件或 Label 控件(即通常只顯示單個值的控件)的典型綁定類型。事實上,控件上的任何屬性都可以綁定到數(shù)據(jù)庫中的字段。
復雜數(shù)據(jù)綁定
復雜數(shù)據(jù)綁定指將一個控件綁定到多個數(shù)據(jù)元素的能力,通常綁定到數(shù)據(jù)庫中的多條記錄,或者綁定到多個任何其他類型的可綁定數(shù)據(jù)元素,一般是綁定到一個DataView。支持復雜綁定的控件的示例有DataGrid、ListBox 和 ErrorProvider 控件。
一般DataGrid控件都是跟一個DataView綁定,DataGrid的數(shù)據(jù)綁定屬于復雜綁定,因為它綁定到有多條記錄的表,DataGrid有兩個屬性同數(shù)據(jù)綁定有關:
DataGrid.DataSource 屬性:獲取或設置DataGrid所顯示數(shù)據(jù)的數(shù)據(jù)源。一般是跟DataTable 、DataView 、DataSet 綁定,如果DataSource設定為DataSet,則引用包含的表不止一個,則必須向 DataMember 屬性設置一個字符串,該字符串指定要綁定到的表。
DataGrid.DataMember 屬性:獲取或設置 DataSource中的特定列表,就是上述DataSource設定為DataSet時,要設定此屬性來指定要綁定到的表。
經(jīng)常有這種需求,一個窗體中有一個DataGrid,顯示了一些數(shù)據(jù),窗體上還有一些TextBox控件,用來顯示DataGrid中的當前行的數(shù)據(jù),一個TextBox控件對應DataGrid行的一個列,當DataGrid的當前行移動時,TextBox控件中的值也會跟著顯示改變后的DataGrid的當前行。
要保證這些數(shù)據(jù)綁定控件保持同步就要一個統(tǒng)一管理數(shù)據(jù)綁定的機制來保證這些控件的同步,DotNet中負責數(shù)據(jù)同步的是BindingManagerBase,它是用來管理數(shù)據(jù)源的,綁定到同一個數(shù)據(jù)源的數(shù)據(jù)綁定控件都可以由BindingManagerBase統(tǒng)一管理。BindingManagerBase可以由Form.BindingContext.Item屬性獲得,此屬性有兩種重載:
public BindingManagerBase this[object DataSource]
//獲取與指定數(shù)據(jù)源關聯(lián)的 BindingManagerBase
public BindingManagerBase this[object DataSource, string DataMember]
//獲取與指定數(shù)據(jù)源和數(shù)據(jù)成員相關聯(lián)的一個 BindingManagerBase
所有的數(shù)據(jù)綁定控件的數(shù)據(jù)源同建立BindingManagerBase時傳遞的對象一樣的,都將屬于這個BindingManagerBase管理,比如,建立一個如下的BindingManagerBase:
BindingManagerBase myBindingManagerBaseParent = this.BindingContext[myDataSet,"customers"];
分享:String.Empty、NULL、“”的不同之處在asp.net(c#)中 String.Empty、NULL、 3個語法 經(jīng)常使用,作用是判斷字符串是否為空。 本文就它們彼此的不同之處做一粗略說明。 string.Empty就相當于 一般用于字符串的初始化 比如: stringa; Console.WriteLine(a);//這里會報錯,因為沒有初始化a 而下
相關.Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- 解析ASP.NET Routing對請求的處理方式
- C#中連接兩個DataTable,相當于Sql的InnerJoin
- ASP.NET2.0向其它網(wǎng)頁傳遞信息的方法
- 談.net 中的職責鏈模式的使用
- 淺析asp.net 和 access 聯(lián)合開發(fā)的分頁類
- 經(jīng)典教程:用.net動態(tài)創(chuàng)建類的實例
- C#中調(diào)用Windows API時的數(shù)據(jù)類型對應關系
- 基于.NET平臺的分層架構(gòu)實戰(zhàn)(三)架構(gòu)概要設計
- ASP.Net中利用CSS實現(xiàn)多界面兩法
- asp.net C#實現(xiàn)下載文件的六種方法實例
- 相關鏈接:
- 教程說明:
.Net教程-總結(jié).NET開發(fā)中ADO.NET的應用(4)
。