【发布时间】:2015-06-22 13:39:49
【问题描述】:
当上下文尝试使用实体框架的代码优先方法连接到数据库时,我收到以下错误消息
System.Data.Entity.DbContext' 不包含“System”的定义,并且找不到接受“System.Data.Entity.DbContext”类型的第一个参数的扩展方法“System”(您是否缺少使用指令还是程序集引用?)
代码:
public class Context : DbContext, IDisposable
{
public Context() : base("EcommConnectionString")
{
}
public List<Entities.RLI_State> States { get; set; }
public List<Entities.RLI_Product> Products { get; set; }
public List<Entities.RLI_StateProduct_List> StateProductList { get; set; }
}
这是我在web.config中定义的连接字符串:
<appSettings>
<add key="EcommConnectionString"
value="data source=localhost;initial catalog=tempdb;integrated security=SSPI" />
</appSettings>
【问题讨论】:
-
首先,
DbContext已经实现了IDisposable,所以你不需要它。其次,您的List<>属性可能应该由DbSet<>代替。 -
另外,你从哪里得到这个错误?你能显示那个代码吗?看起来你在某处有一些代码写着
context.System(),这显然是不正确的。 -
感谢大卫,在做了这两项更改后,错误已经消失,但出现了一些新错误
-
我可以找出那个错误。我可以标记你的答案。
标签: c# ef-code-first entity-framework-6