我正在努力让实体框架以中等信任的方式运作。我试过拆分文件并使用单独的程序集,但我似乎有一个又一个问题。
我将EDMX移动到一个单独的程序集,这会导致单个.dll到site / Bin目录。我在web.config中引用如下所示。
<add name="ApplicationDB" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Application.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />
<add name="ShopEntities" connectionString="metadata=res://*/;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Application.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
每当我尝试访问其中一个实体类时,我都会收到一个ArgumentException:'已经添加了一个具有相同键的项。'这对于中等信任很重要,但我似乎已经没有选择了。任何建议都非常感谢。
答案 0 :(得分:1)
您可以在中等信任中使用Entity Framework 3.5。但是,在Windows 7和Windows Server 2008上运行此问题时出现问题.Microsoft为此发布了一个补丁。请阅读here了解详情。
答案 1 :(得分:1)
将EDMX和所有部分类移动到单独的程序集是最终的解决方案。