Enterprise Library教程 【1】

Enterprise Library for .Net Framework 3.5 – EntLib v4.1 是patterns & practices 小組爲.NET Framework 3.5 開發一套企業庫,目前最新版本爲v4.1,共包括9個Application Block,包括數據訪問(Data Access Application Block)、異常管理(Exception Handling Application Block)、數據驗證(Validation Application Block)等等,對企業應用開發非常有幫助,也非常實用。
 
 
相關下載信息:
 
本文根據EntLib v4.1 的學習手冊(Hands on Lab),演示數據訪問模塊的應用:
 
1. 下載EntLib v4.1 的 Hands on Lab (http://www.codeplex.com/entlib ) ,並進行安裝。
打開安裝目錄下的/Enterprise Library 4.1 HOL/CS/Data Access/exercises/ex01/begin 的SimpleData.sln 項目文件,就可以開始下面的工作了。
 
在開始之前,還需要創建範例程序中訪問的EntLibQuickStarts 數據庫。
創建數據庫、表、及其存儲過程的腳本文件:Enterprise Library 4.1 HOL/CS/Data Access/setup/ DataAccessQuickStarts.sql。在SQL SERVER 2005/2008 中打開,執行一下就可以了。
 
2. 引用EntLib 中需要的DLL 文件,在安裝的目錄下 C:/Program Files/Microsoft Enterprise Library 4.1 - October 2008/Bin。這裏,引用如下DLL 文件:
Microsoft.Practices.EnterpriseLibrary.Common.dll
Microsoft.Practices.EnterpriseLibrary.Data.dll
 
打開項目中 MainForm.cs 代碼文件,添加應用的namespace的引用:
using Microsoft.Practices.EnterpriseLibrary.Data;
 
3. 添加代碼:
第一段代碼是返回有多少條Customers記錄。
        private void mnuCount_Click(object sender, System.EventArgs e)
        {
            Database db = null;
            db = DatabaseFactory.CreateDatabase("QuickStarts Instance");
 
            int count = (int)db.ExecuteScalar(CommandType.Text, "SELECT Count(*) From Customers");
 
            string message = string.Format("There are {0} customers in the database", count.ToString());
 
            MessageBox.Show(message);
        }
第二段代碼是返回所有的Customers記錄,並顯示DataGrid中。
        private void mnuLoad_Click(object sender, System.EventArgs e)
        {
            Database db = null;
            db = DatabaseFactory.CreateDatabase();
 
            DataSet ds = db.ExecuteDataSet(CommandType.Text, "SELECT * From Customers");
 
            dataGrid1.DataSource = ds.Tables[0];
        }
 
 
到目前爲止,還不能運行上述的代碼,因爲app.config 配置文件還沒有創建,還不存在數據庫連接。
 
4. 創建app.config 配置文件,通過EntLib 附帶的編輯器進行編輯,自動生成相應的配置文件,如下圖所示,該編輯器與Visual Studio 2008 進行了集成。
 
 
如下圖所示,通過編輯器,創建新的Connection String。
 

 
並設置Connection String 具體信息。
 
 
這裏需要注意的幾個地方是:
(1)選擇Connection String節點,更改Name 屬性爲 QuickStarts Instance,就是上面代碼中創建Database時傳入的參數值。
 
(2)選擇Data Access Application Block 節點,設置DefaultDatabase 屬性爲QuickStarts Instance。在上面的第二段代碼中,創建Database對象時沒有傳入參數,就是這裏定義的DefaultDatabase參數。
 
保存上述配置信息,查看一下自動生成的配置文件:
<?xmlversion="1.0"encoding="utf-8"?>
<configuration>
 <configSections>
    <sectionname="dataConfiguration"type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
 </configSections>
 <dataConfigurationdefaultDatabase="QuickStarts Instance" />
 <connectionStrings>
    <addname="QuickStarts Instance"connectionString="Data Source=YOURCOMPUTERNAME;Initial Catalog=EntLibQuickStarts;Integrated Security=True"
      providerName="System.Data.SqlClient" />
 </connectionStrings>
</configuration>
 
5. 現在就可以運行範例程序了,看看運行情況。
 
 

歡迎繼續訪問後續的內容。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章