Entity framework EDMX连接字符串

Entity framework EDMX连接字符串,entity-framework,connection-string,edmx,Entity Framework,Connection String,Edmx,所以故事是这样的 我有一个名为PA.DLL的项目,在它(edmx)文件中有一个实体模型 在我引用PA.DLL的另一个项目中,我将创建edmx文件时(自动)创建的连接字符串复制到主app.config中 但是,当我加载并运行以下行时: using (PAEntities analytix = new PAEntities()) { ... } 我得到以下错误: System.ArgumentException: The specified default EntityCon

所以故事是这样的

我有一个名为PA.DLL的项目,在它(edmx)文件中有一个实体模型

在我引用PA.DLL的另一个项目中,我将创建edmx文件时(自动)创建的连接字符串复制到主app.config中

但是,当我加载并运行以下行时:

using (PAEntities analytix = new PAEntities())
           {
...
}
我得到以下错误:

System.ArgumentException: The specified default EntityContainer name 'PAEntities' could not be found in the mapping and metadata information.
有人知道这个错误的原因吗

以下是我的连接字符串的配置方式:

<add name="PAEntities" 
    connectionString="metadata=res://*/PAEntities.csdl|res://*/PAEntities.ssdl|res://*/PAEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=XSXSX;Initial Catalog=PA;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />


谢谢

一种解决方案是将连接字符串放在使用DLL的项目的配置文件中

另一个是在代码中传递连接字符串(使用PAEntities的参数化构造函数)。

在解决方案资源管理器上,右键单击实体数据模型文件(.edmx),然后单击“打开方式”。将打开一个对话框,为您选择打开文件的程序。 选择或双击“XML(文本)编辑器”

现在您看到的是EDM文件的XML版本,您可以在其中轻松编辑“EntityContainer”名称

如果更改了webconfig文件上的connectionstring,请确保“DefaultContainerName”是该XML文件中“EntityContainer”部分的名称

通常在更新*.Designer.cs文件中的defaultContainerName时,它不会更新XML文件。所以你必须手动完成