网络上有很多介绍有关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,未深入研究!日后慢慢再继续学习……