我正在研究ac#asp.net MVC project.it作为一个普通的旧asp.net项目提供给我,我升级到MVC 3.通常我使用vb.net进行我的项目但这已交给我作为ac #project。在我的所有项目中,我创建了一个使用泛型并可以处理几乎所有基本情况的基本存储库,它引用的表由System.Data.Entity命名空间中类型为IDbSet的成员变量表示。这在我的vb项目中一直运行良好。在这个项目中,我收到一个编译错误,指出该类型无法识别,并询问我是否缺少using指令或程序集引用。
当我尝试定义明确指定名称空间的变量时,如下所示:
protected readonly System.Data.Entity.IDbSet mObjectSet;
我仍然得到错误,我在系统之后得到了智慧。并在数据之后。但是一旦我输入实体。我一无所获。我尝试过清理和重建,重新启动visual studio,重新启动计算机。谷歌似乎没有一个相关的问题。非常感谢任何帮助!
编辑:
我应该提到我已经引用了System.Data.Entity版本4.0.0.0。
答案 0 :(得分:6)
IDbSet界面位于EntityFramework.dll
汇编中(不在System.Data.Entity.dll
汇编中,请注意!)。只需在项目树中添加对它的引用(References
文件夹,然后右键单击并选择Add reference
或使用NuGet包管理器(如果已安装)。
答案 1 :(得分:0)
检查您是否有 System.Data.Entity 参考
编辑:我认为你需要版本3.5.0.0或4.0.0.0
答案 2 :(得分:0)
另请注意,VS 2010默认创建实体框架4.0(在System.data.entity中)实体模型, 和vs 2012创建一个entityframework 5.0(在EntityFramework.dll中)模型。