【问题标题】:WPF and ADO.NET EF - errorWPF 和 ADO.NET EF - 错误
【发布时间】:2010-06-19 16:57:14
【问题描述】:

我不断收到此错误:

Microsoft.Practices.Composite.Modularity.ModuleInitializeException was unhandled
  Message=An exception occurred while initializing module 'DiagrammerModule'. 
    - The exception message was: An exception has occurred while trying to add a view to region 'MainRegion'. 
    - The most likely causing exception was was: 'System.ArgumentException: The specified named connection is either not found in the configuration, not intended to be used with the EntityClient provider, or not valid.
   at System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString)
   at System.Data.EntityClient.EntityConnection..ctor(String connectionString)
   at System.Data.Objects.ObjectContext.CreateEntityConnection(String connectionString)
   at System.Data.Objects.ObjectContext..ctor(String connectionString, String defaultContainerName)
....

连接字符串存储在 app.config 中,如下所示:

<connectionStrings>
    <add name="DBEntities" connectionString="metadata=res://DataAccessLayer/EntityDataModel.csdl|res://*/EntityDataModel.ssdl|res://*/EntityDataModel.msl;provider=System.Data.SqlServerCe.3.5;provider connection string=&quot;Data Source=|DataDirectory|\DB.sdf;Password=password;Persist Security Info=True&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

其中 DataAccessLayer 是保存模型和实体的 DLL 的名称。

那段代码有什么问题?

感谢您的帮助。

【问题讨论】:

    标签: wpf entity-framework connection-string


    【解决方案1】:

    看起来数据上下文构造函数在配置文件中找不到连接字符串。检查文件被复制到应用程序输出目录,名称为 {your-WPF-applicaiton-name}.exe.config(不是 {your-DLL-contains-data-context}.dll.config)。

    【讨论】:

    【解决方案2】:

    从您提供的链接中,它表明: “*”被替换为包含该文件的 DLL 的名称。

    因此,请确保按如下方式替换所有“*”实例:

    <connectionStrings>
      <add name="DBEntities" connectionString="metadata=res://DataAccessLayer/EntityDataModel.csdl|res://DataAccessLayer/EntityDataModel.ssdl|res://DataAccessLayer/EntityDataModel.msl;provider=System.Data.SqlServerCe.3.5;provider connection string=&quot;Data Source=|DataDirectory|\DB.sdf;Password=password;Persist Security Info=True&quot;" providerName="System.Data.EntityClient" />
    </connectionStrings>
    

    【讨论】:

      猜你喜欢
      • 2011-04-02
      • 1970-01-01
      • 2011-07-24
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      • 2014-07-03
      • 1970-01-01
      • 2012-04-13
      相关资源
      最近更新 更多