多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

中國最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2

aspnet教程

  • ASP.NET 教程
  • ASP.NET 簡介
  • ASP.NET Razor

    ASP.NET MVC

    ASP.NET 編程指南

    ASP.NET ADO.NET

    閱讀 (2234)

    ADO.NET

    ADO.NET 提供了前端控件和后端數據庫之間的橋梁。ADO.NET 對象封裝了與數據顯示對象相互作用的所有的數據存取操作和控件。因此便隱藏了數據移動的細節。

    下列圖表整體展示了 ADO.NET 對象:

    DataSet 類

    數據集代表了數據庫的一個子集。它和數據庫沒有持續的連接。為了升級數據庫需要進行重新連接。DataSet 包括了 DataTable 和 DataRelation 對象。DataRelation 對象代表了兩張表之間的關系。

    下表是 DataSet 類的一些重要屬性:

    屬性描述
    CaseSensitive說明和數據表進行對比的字符串是否區分大小寫。
    Container為組件獲取空間。
    DataSetName獲取或者設置現有數據集合的名稱。
    DefaultViewManager返回數據集合中的數據視圖。
    DesignMode表明組件是否處于設計模式下。
    EnforceConstraints表明嘗試上傳文件時是否遵循限制條件。
    Events獲取與本組件相關的事件處理器列表。
    ExtendedProperties獲取與 DataSet 相關的自定義用戶的信息的集合。
    HasErrors表明是否有任何錯誤。
    IsInitialized表明 DataSet 是否初始化。
    Locale獲取或者設置用來和表比較字符串的信息。
    Namespace獲取或者設置 DataSet 的命名空間。
    Prefix獲取或者設置一個 XML 前綴,它是命名空間的別名。
    Relations返回 DataRelation 對象的集合。
    Tables返回 DataTable 對象的集合。

    下表列出來 DataSet 類的一些重要方法:

    方法描述
    AcceptChanges接受所有由于裝載 DataSet 或者這個方法的更改。
    BeginInit開始 DataSet 的初始化。該初始化發生在運行時。
    Clear清除數據。
    Clone克隆包括所有 DataTable 的結構、關系和限制在內的 DataSet 的結構。但是不克隆數據。
    Copy復制數據和結構。
    CreateDataReader()為每個 DataTable 返回帶有一個結果集的 DataTableReader,順序與 Tables 集合中表的顯示順序相同。
    CreateDataReader(DataTable[])為每個 DataTable 返回帶有一個結果集 DataTableReader。
    EndInit結束在窗體上使用或由另一個組件使用的 DataSet 的初始化。初始化發生在運行時。
    Equals(Object)確定指定的對象是否等于當前對象。
    Finalize釋放資源執行其他清除。
    GetChanges獲取 DataSet 的副本,該副本包含自加載以來或自上次調用 AcceptChanges 以來對該數據集進行的所有更改。
    GetChanges(DataRowState)獲取由 DataRowState 篩選的 DataSet 的副本,該副本包含上次加載以來或調用 AcceptChanges 以來對該數據集進行的所有更改。
    GetDataSetSchema為 DataSet 獲取 XmlSchemaSet 副本。
    GetObjectData用序列化 DataSet 所需的數據填充序列化信息對象。
    GetType獲取當前實例的 Type。
    GetXML返回存儲在 DataSet 中的數據的 XML 表示形式。
    GetXMLSchema返回存儲在 DataSet 中的數據的 XML 表示形式的 XML 架構。
    HasChanges()獲取一個值,該值指示 DataSet 是否有更改,包括新增行、已刪除的行或已修改的行。
    HasChanges(DataRowState)獲取一個值,該值指示 DataSet 是否有 DataRowState 被篩選的更改,包括新增行、已刪除的行或已修改的行。
    IsBinarySerialized檢查 DataSet 的序列化表示形式的格式。
    Load(IDataReader, LoadOption, DataTable[])使用提供的 IDataReader 以數據源的值填充 DataSet,同時使用 DataTable 實例的數組提供架構和命名空間信息。
    Load(IDataReader, LoadOption, String[])使用所提供的 IDataReader,并使用字符串數組為 DataSet 中的表提供名稱,從而用來自數據源的值填充 DataSet。
    Merge()將指定的 DataSet、DataTable 或 DataRow 對象的數組合并到當前的 DataSet 或 DataTable 中。這種方法有不同的重載形式。
    ReadXML()將 XML 架構和數據讀入 DataSet。這種方法有不同的重載形式。
    ReadXMLSchema(0)將 XML 架構讀入 DataSet。這種方法有不同的重載形式。
    RejectChanges回滾自創建 DataSet 以來或上次調用 DataSet.AcceptChanges 以來對其進行的所有更改。
    WriteXML()從 DataSet 寫 XML 數據和架構。這種方法有不同的重載形式。
    WriteXMLSchema()從 DataSet 寫 XML 架構。這種方法有不同的重載形式。

    DataTable 類

    DataTable 類代表了數據庫中的表。它有如下的重要屬性:大多數屬性都是只讀屬性除了 PrimaryKey 屬性:

    屬性描述
    ChildRelations獲取此 DataTable 的子關系的集合。
    Columns獲取屬于該表的列的集合。
    Constraints獲取由該表維護的約束的集合。
    DataSet獲取此表所屬的 DataSet。
    DefaultView獲取可能包括篩選視圖或游標位置的表的自定義視圖。
    ParentRelations獲取該 DataTable 的父關系的集合。
    PrimaryKey獲取或設置充當數據表主鍵的列的數組。
    Rows獲取屬于該表的行的集合。

    下表列示出了一些 DataTable 類的重要方法:

    方法描述
    AcceptChanges提交自加載此 DataSet 或上次調用 AcceptChanges 以來對其進行的所有更改。
    Clear通過移除所有表中的所有行來清除任何數據的 DataSet。
    GetChanges獲取 DataSet 的副本,該副本包含自上次加載以來或自調用 AcceptChanges 以來對該數據集進行的所有更改。
    GetErrors獲取包含錯誤的 DataRow 對象的數組。
    ImportRows將 DataRow 復制到 DataTable 中,保留任何屬性設置以及初始值和當前值。
    LoadDataRow查找和更新特定行。 如果找不到任何匹配行,則使用給定值創建新行。
    Merge將指定的 DataSet、DataTable 或 DataRow 對象的數組合并到當前的 DataSet 或 DataTable 中。
    NewRow創建與該表具有相同架構的新 DataRow。
    RejectChanges回滾自該表加載以來或上次調用 AcceptChanges 以來對該表進行的所有更改。
    Reset清除所有表并從 DataSet 中刪除所有關系、外部約束和表。 子類應重寫 Reset,以便將 DataSet 還原到其原始狀態。
    Select獲取 DataRow 對象的數組。

    DataRow 類

    DataRow 對象代表了表中的一行,它有如下的重要屬性:

    屬性描述
    HasErrors表明是否有錯誤。
    Items獲取或者設置存儲在特定欄目的數據。
    ItemArrays獲取或者設置本行中所有的值。
    Table返回父表。

    下表列示了 DataRow 類的重要方法:

    方法描述
    AcceptChanges應用調用該方法后的所有更改。
    BeginEdit開始編輯操作。
    CancelEdit取消編輯操作。
    Delete刪除數據行。
    EndEdit結束編輯操作。
    GetChildRows獲取本行的子行。
    GetParentRow獲取父行。
    GetParentRows獲取 DataRow 的父行。
    RejectChanges回滾所有 AcceptChanges 調用后的更改。

    DataAdapter 對象

    DataAdapter 對象扮演 DataSet 對象與數據庫之間的中間者。這有助于 DataSet 從多種數據庫或者其他數據源獲取數據。

    DataReader 對象

    DataReader 對象是 DataSet 和 DataAdapter 結合的備選。這個對象提供了對數據庫中的數據記錄的定向的存取。這些對象只適合只讀存取,例如填充一個列表然后斷開連接。

    DbCommand 和 DbConnection 對象

    DbConnection 對象代表了數據源的連接。這種連接可以在不同的命令對象間共享。
    DbCommand 對象代表了從檢索或操縱數據發送到數據庫的命令或者或者一個儲存的進程。

    例子

    目前為止,我們已經應用了我們電腦中的表和數據庫。在本案例中,我們將創建一個表,添加欄目,行和數據,并且用 GridView 控件顯示表。

    源文件代碼如下:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="createdatabase._Default" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    
       <head runat="server">
          <title>
             Untitled Page
          </title>
       </head>
    
       <body>
          <form id="form1" runat="server">
    
             <div>
                <asp:GridView ID="GridView1" runat="server">
                </asp:GridView>
             </div>
    
          </form>
       </body>
    
    </html>

    文件的代碼如下:

    namespace createdatabase
    {
       public partial class _Default : System.Web.UI.Page
       {
          protected void Page_Load(object sender, EventArgs e)
          {
             if (!IsPostBack)
             {
                DataSet ds = CreateDataSet();
                GridView1.DataSource = ds.Tables["Student"];
                GridView1.DataBind();
             }
          }
    
          private DataSet CreateDataSet()
          {
             //creating a DataSet object for tables
             DataSet dataset = new DataSet();
    
             // creating the student table
             DataTable Students = CreateStudentTable();
             dataset.Tables.Add(Students);
             return dataset;
          }
    
          private DataTable CreateStudentTable()
          {
             DataTable Students = new DataTable("Student");
    
             // adding columns
             AddNewColumn(Students, "System.Int32", "StudentID");
             AddNewColumn(Students, "System.String", "StudentName");
             AddNewColumn(Students, "System.String", "StudentCity");
    
             // adding rows
             AddNewRow(Students, 1, "M H Kabir", "Kolkata");
             AddNewRow(Students, 1, "Shreya Sharma", "Delhi");
             AddNewRow(Students, 1, "Rini Mukherjee", "Hyderabad");
             AddNewRow(Students, 1, "Sunil Dubey", "Bikaner");
             AddNewRow(Students, 1, "Rajat Mishra", "Patna");
    
             return Students;
          }
    
          private void AddNewColumn(DataTable table, string columnType, string  columnName)
          {
             DataColumn column = table.Columns.Add(columnName,  Type.GetType(columnType));
          }
    
          //adding data into the table
          private void AddNewRow(DataTable table, int id, string name, string city)
          {
             DataRow newrow = table.NewRow();
             newrow["StudentID"] = id;
             newrow["StudentName"] = name;
             newrow["StudentCity"] = city;
             table.Rows.Add(newrow);
          }
       }
    }

    當你執行程序時,觀察以下幾方面:

    • 程序首先創建應一個數據集合然后用 GridView 控件的 DataBind() 方法約束它。
    • Createdataset() 方法是用戶定義功能,它可以創建一個新的 DataSet 對象并且調用其他的用戶定義的 CreateStudentTable() 方法來創建表格然后將他們添加到數據集合的表集合中。
    • CreateStudentTable() 方法調用用戶定義的 AddNewColumn() 和 AddNewRow() 方法來創建表的欄目和行同時向行中添加數據。
      當頁面得到執行,它返回的表的行如下圖所示:

    關閉
    程序員人生
    主站蜘蛛池模板: 欧美成人观看免费完全 | 精品日韩欧美一区二区三区在线播放 | 亚洲欧洲日韩国产一区二区三区 | 亚洲精品久久99久久一区 | 欧美一级精品高清在线观看 | 国产噜噜噜视频在线观看 | 日本免费乱人伦在线观看 | jizz日本在线观看 | 一区二区三区在线 | 网站 | 日本wwwwwwwww| 久久精品国产欧美成人 | 五月婷婷视频在线观看 | 日韩免费一区 | 伊人久久大香线焦综合四虎 | aa级一级天堂片免费观看 | 久久精品免费视频6 | 久久ri精品高清一区二区三区 | 影音先锋 色天使 | 亚洲伊人成综合网 | 美女啪啪91 | 波多野结衣一区二区三区高清在线 | 欧美激情伦妇在线观看 | 999精品视频在线观看 | 久草香蕉视频在线观看 | 日本精品一区二区在线播放 | 亚洲精品国产v片在线观看 亚洲精品国产啊女成拍色拍 | 欧美成视频 | 亚洲免费成人在线 | 黄色网址在线免费 | 与黑人女人做爰的真实感受 | 久久亚洲精品人成综合网 | 久久精品国产一区二区三区 | 精品国产一区二区三区不卡在线 | 日本午夜在线观看 | 91精品国产一区二区三区四区 | 成人不卡视频 | 亚洲成人免费在线视频 | 在线午夜视频 | 亚洲天堂中文字幕 | 2018一级毛片免费观看 | 国产91嫩草精品 |