【发布时间】:2011-12-15 21:20:39
【问题描述】:
我有一个使用 ASP.Net Webforms 和 Entity Framework 的网站,在编译期间 VS2010 告诉我以下错误:
错误 CS0012:“System.Data.Objects.DataClasses.EntityObject”类型在未引用的程序集中定义。您必须添加对程序集“System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。
问题是在 web.config 中正确配置了引用
项目的属性页说项目使用的Framework版本是v3.5,没错。
任何帮助将不胜感激。
这是我的 web.config 中的程序集部分
<assemblies>
<add assembly="System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>.
【问题讨论】:
-
引用是否出现在 Project/References 下?
-
添加对项目文件的引用。右键单击项目并添加引用。
-
您是否直接从您的 UI 使用 EF?检查这个也适用于网络表单stackoverflow.com/questions/7474267/mvc3-and-entity-framework/…
-
引用显示在项目中应该出现的任何地方。这绝对是一些环境/框架问题。
-
我在另一台PC上安装了VS2010,必须来回切换我正在使用的框架版本。最后我将版本设置为 3.5,然后项目编译没有错误或警告。有什么线索吗?