網絡上有很多介紹有關Enterprise Library的使用方法,但是講的機乎都是一段一段的運行源碼時總會報出諸多異常。特是在配置文件連接字符串那塊有些不一樣。趁着手頭上的工作不是太緊小小的研究了下(以備后用),結合網上各位大神給出的資料作參考自己寫了個簡單demo。
首先在項目中引用以下幾個DLL
/*需引用 * Microsoft.Practices.EnterpriseLibrary.Data.dll, * Microsoft.Practices.ServiceLocation.dll, * Microsoft.Practices.Unity.dll, * Microsoft.Practices.Unity.Interception.dll */
一開始自己只引用了第一個,在運行時報出Microsoft.Practices.ServiceLocation版本出錯的異常。后來才知道要讓程序能跑通至少到引用這四個dll,好像少一個都不行哦!
然后在代碼中引用下面的命名空間
using Microsoft.Practices.EnterpriseLibrary.Data; using System.Data.Common;
using System.Data;
下面就是主程序塊處
public partial class WebForm1 : System.Web.UI.Page { //創建數據庫連接 private static Database db = DatabaseFactory.CreateDatabase("StrConn"); protected void Page_Load(object sender, EventArgs e) { //存儲過程 DbCommand com = db.GetStoredProcCommand("AddUserInfo"); db.AddInParameter(com, "@UserName", DbType.String, "zgshi"); db.AddInParameter(com, "@Pwd", DbType.String, "123456" ); db.ExecuteNonQuery(com); } }
這樣后台的代碼算是完成了,關於配置文件數據連接字符串可以這樣寫但使用企業庫只能用第一種的方法去輸寫,第二種不識別。
<!-- 第一種 --> <connectionStrings> <add name="StrConn" connectionString="Server=192.168.13.143;database=MyTestDB;User ID=sa;Password=123;" providerName="System.Data.SqlClient" /> </connectionStrings> <!-- 第二種 --> <appSettings> <add key="StrDB" value="server=192.168.13.143;database=MyTestDB;uid=sa;pwd=123;" /> </appSettings>
當然也可以用EntLibConfig工具自動生成,打開EntLibConfig.exe選擇Blocks——>Add Data Settings如圖
然后點擊 Database Instances 右邊的加號下的 Add Database Connection String 創建連接字符串
然后填寫相應信息
這里的連接字符串是手動寫入的,在Database Provider的下拉框中選擇System.Data.SqlClient最后保存設置后的文件然后添加到項目中即可。
以上只是個非常簡的demo,未深入研究!日后慢慢再繼續學習……