• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            twzheng's cppblog

            『站在風口浪尖緊握住鼠標旋轉!』 http://www.cnblogs.com/twzheng

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              136 隨筆 :: 78 文章 :: 353 評論 :: 0 Trackbacks
            類型化數據集與非類型化數據集

            類型化數據集先是從基類 DataSet 派生,然后使用“數據集設計器”中的信息(存儲在 .xsd 文件中)生成一個新的強類型數據集類。架構中的信息(表、列等)被作為一組第一類對象和屬性生成并編譯為此新數據集類。由于類型化數據集繼承自基 DataSet 類,因此類型化類具有 DataSet 類的所有功能,可以與采用 DataSet 類的實例作為參數的方法一起使用。 

            相形之下,非類型化數據集沒有相應的內置架構。與類型化數據集一樣,非類型化數據集也包含表、列等,但它們只作為集合公開。(不過,在手動創建了非類型化數據集中的表和其他數據元素后,可以使用數據集的 WriteXmlSchema 方法將數據集的結構導出為一個架構。)



            對比類型化和非類型化數據集中的數據訪問
            類型化數據集的類有一個對象模型,在此對象模型中該類的屬性采用表和列的實際名稱。例如,如果使用的是類型化數據集,可以使用如下代碼引用列:

            // This accesses the CustomerID column in the first row of the Customers table.
            string customerIDValue = northwindDataSet.Customers[0].CustomerID;
            相比較而言,如果使用的是非類型化數據集,等效的代碼為:

            string customerIDValue = (string)
                dataset1.Tables["Customers"].Rows[0]["CustomerID"];

            類型化訪問不但更易于讀取,而且完全受 Visual Studio“代碼編輯器”中 IntelliSense 的支持。除了更易于使用外,類型化數據集的語法還在編譯時提供類型檢查,從而大大降低了為數據集成員賦值時發生錯誤的可能性。如果更改 DataSet 中的列名并編譯應用程序,則會收到生成錯誤。通過雙擊“任務列表”中的生成錯誤,可以直接轉到引用舊列名的代碼行。在運行時對類型化數據集中的表和列的訪問也略為快一些,因為訪問是在編譯時確定的,而不是在運行時通過集合確定。

            盡管類型化數據集有許多優點,但在許多情況下需要使用非類型化數據集。最顯而易見的情形是數據集無架構可用。例如,當應用程序正在與返回數據集的組件交互而您事先不知道其結構是哪種時,便會出現這種情況。同樣,有些時候使用的數據不具有靜態的可預知結構,這種情況下使用類型化數據集是不切實際的做法,因為對于數據結構中的每個更改,您都必須重新生成類型化數據集類。

            更常見的是,許多時候可能需要動態創建無可用架構的數據集。這種情況下,數據集只是一種方便的、可用來保留信息的結構(只要數據可以用關系方法表示)。同時,您還可以利用數據集的功能,如序列化傳遞到另一進程的信息或寫出 XML 文件的能力。
            ----來自MSDN
            posted on 2007-11-26 22:59 譚文政 閱讀(635) 評論(0)  編輯 收藏 引用 所屬分類: 數據庫
            久久婷婷成人综合色综合| 青青草国产精品久久| 中文字幕久久精品| 久久久久亚洲AV成人网人人网站 | 久久国产免费直播| 日韩AV毛片精品久久久| 人妻丰满AV无码久久不卡| 国产一级做a爰片久久毛片| 久久人搡人人玩人妻精品首页| 久久久久人妻一区二区三区| 99久久国产综合精品麻豆| 色婷婷综合久久久久中文字幕 | 久久天天躁夜夜躁狠狠| 久久99精品久久久久久动态图| 久久久WWW免费人成精品| 久久人人爽人人爽人人片av高请 | 国产精品狼人久久久久影院 | 国内精品伊人久久久久| 久久久国产亚洲精品| 国产免费久久精品99久久| 亚洲色欲久久久综合网| 午夜精品久久久内射近拍高清 | 久久天天躁狠狠躁夜夜躁2O2O| 亚洲国产精品无码久久久久久曰| 久久精品天天中文字幕人妻| 久久亚洲欧洲国产综合| 久久青青草原综合伊人| MM131亚洲国产美女久久| 欧洲性大片xxxxx久久久| 国产毛片久久久久久国产毛片 | 狠狠色丁香婷婷久久综合五月| 精品久久一区二区三区| 亚洲精品乱码久久久久66| 蜜桃麻豆WWW久久囤产精品| 久久综合九色欧美综合狠狠| 国产精品99久久精品爆乳| 91精品无码久久久久久五月天 | 久久久久亚洲AV成人片 | 久久久久成人精品无码中文字幕| 亚洲国产成人精品无码久久久久久综合 | 曰曰摸天天摸人人看久久久|