【问题标题】:Enterprise library 4 dataconfiguration tag企业库4数据配置标签
【发布时间】:2011-01-25 14:06:32
【问题描述】:

我正在使用企业库进行数据访问。 当我运行应用程序时,在 CreateDatabase() 语句中我得到了这个异常:

Microsoft.Practices.ObjectBuilder2.BuildFailedException 未被用户代码处理 Message="当前构建操作 (构建密钥构建 键[Microsoft.Practices.EnterpriseLibrary.Data.Database, 空]) 失败: 该值不能为 null 或空字符串。 (策略类型 Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy, 索引 2)" Source="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"/>

【问题讨论】:

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


    【解决方案1】:

    是的,您需要将 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>
    

    然后你需要在 web.config 中添加实际的 dataConfiguration 部分:

    <dataConfiguration defaultDatabase="LocalSqlServer"/>
    

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

    【讨论】:

      猜你喜欢
      • 2011-01-18
      • 1970-01-01
      • 2011-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-22
      • 1970-01-01
      相关资源
      最近更新 更多