Or *_*r A 7 entity-framework connection-string edmx
所以故事是这样的.
我有一个名为PA.DLL的项目,其中包含一个实体模型(edmx)文件.
在我引用PA.DLL的另一个项目中,我复制了在主应用程序app.config中创建edmx文件时(自动)创建的连接字符串.
但是,当我加载并运行以下行时:
using (PAEntities analytix = new PAEntities())
{
...
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
System.ArgumentException: The specified default EntityContainer name 'PAEntities' could not be found in the mapping and metadata information.
Run Code Online (Sandbox Code Playgroud)
有谁知道这个错误的原因是什么?
这是我的连接字符串配置方式:
<add name="PAEntities"
connectionString="metadata=res://*/PAEntities.csdl|res://*/PAEntities.ssdl|res://*/PAEntities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=XSXSX;Initial Catalog=PA;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)
谢谢
小智 7
在解决方案资源管理器中,右键单击实体数据模型文件(.edmx),然后单击"打开方式".将打开一个对话框,选择一个程序供您打开文件.选择或双击"XML(文本)编辑器".
现在,您将查看EDM文件的XML版本,您可以在其中轻松编辑"EntityContainer"名称.
如果您更改了webconfig文件中的连接字符串,请确保"DefaultContainerName"是该XML文件中"EntityContainer"部分的名称.
通常,当您更新*.Designer.cs文件中的defaultContainerName时,它不会更新XML文件.所以你手动完成.