企业库4 dataconfiguration标记

时间:2011-01-25 14:06:32

标签: asp.net asp.net-3.5 enterprise-library

我正在使用Enterprise库进行数据访问。 当我运行应用程序时,在CreateDatabase()语句中,我收到此异常:

  

Microsoft.Practices.ObjectBuilder2.BuildFailedException   用户代码未处理   Message =“当前的构建操作   (构建密钥构建   键[Microsoft.Practices.EnterpriseLibrary.Data.Database,   null])失败:            该值不能为null或空字符串。            (策略类型Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy,   指数2)“   源= “Microsoft.Practices.ObjectBuilder2”

现在,我用Google搜索了一下,发现我必须放置

<dataConfiguration defaultDatabase="LocalSqlServer"/>

但我不知道在哪里。这是正确的解决方案吗?

另外,在安装企业库时我没有看到任何连接字符串语句?所以,我想知道如何从web.config文件中获取连接字符串。

在我的web.config文件的连接字符串部分中,我有:

<remove name="LocalSqlServer"/>
 <add name="LocalSqlServer" connectionString="Data Source=MSTR;Initial Catalog=USERDb;Integrated Security=true;" providerName="System.Data.SqlClient"/>

1 个答案:

答案 0 :(得分:6)

是的,您需要将dataConfiguration部分添加到web.config。

首先,您需要将dataConfiguration添加到web.config中的ConfigurationSections列表中:

<configSections>
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>

然后你需要将你的连接字符串添加到web.config(你已经这样做了):

<connectionStrings>
    <add name="LocalSqlServer" connectionString="Data Source=MSTR;Initial Catalog=USERDb;Integrated Security=true;" providerName="System.Data.SqlClient"/>      
</connectionStrings>

然后,您需要将实际的dataConfiguration部分添加到web.config:

<dataConfiguration defaultDatabase="LocalSqlServer"/>

您也可以使用企业库配置工具为您执行此操作。