我的POCO模型是单独的dll,而不是我的 asp.net mvc 3网站。
我在 LinqPad Beta 中创建了新连接:为 Poco 选择了 v4.41.01 选项,提供了自定义 dll 的路径,选择了 DbContext,通过无参数构造函数选择了。
这不起作用,因为我使用的是SqlServer Compact。
然后我创建了dummy.config文件,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.3.1.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlServerCe.4.0" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
<connectionStrings>
<add name="ModelContext"
connectionString="data source=database.sdf"
providerName="system.data.sqlserverce.4.0" />
</connectionStrings>
</configuration>
这样,连接测试将显示成功。甚至,左边的树也被填充了。但是当我运行任何查询时,它会引发异常,如下所示:找不到方法:"System.Data.Entity.DbSet'1 InventoryModelContext.get_xxx()'。
编辑:另外,请注意,这似乎是编译错误!
任何解决方案或解决方法?我错过了什么吗?
提前谢谢。
我也遇到了这个问题,它没有任何明显的原因开始 - 没有改变我环境中的任何内容。
我正在使用EF4.2 Poco,LINQPad 4.42.01
为了解决这个问题,我开始以管理员身份运行LINQPad,它解决了它。我不确定是什么变化使它中断,我已经有一段时间没有使用 LINQPad,所以也许是 LINQPad 的一些自动更新或类似的东西。
更新:重新安装后,由于某种原因,Administartor 技巧不起作用,我发现的一种新方法是先查询而不指定数据库(右上角显示 <None>
),然后我收到一个错误,我正在查询的内容在此上下文中不存在,然后将数据库设置为正确的上下文, 它有效。
仍然不确定究竟是什么原因造成的。