ADO.NET实体框架和ASP.NET MVC的结合是否有可能是错误的?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (27)

我有三个项目的解决方案。

  1. DomainModel(带有ADO.NET实体框架的C#库)
  2. DomainModelTest(业务逻辑的单元测试)
  3. WebApp(使用DomainModel)

出于某种原因,如果我通过DomainModel中的任何对象,甚至不能简单地带来视图。我得到下面的错误:

有任何想法吗?

Compiler Error Message: CS0012: The type 'System.Data.Objects.DataClasses.EntityObject' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Source Error:

Line 146: Line 147: [System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()] Line 148: public class views_home_index_aspx : System.Web.Mvc.ViewPage, System.Web.SessionState.IRequiresSessionState, System.Web.IHttpHandler { Line 149: Line 150: private static bool @__initialized;

我认为这可能会有所帮助,实际的错误出现在下面指出的行中的Default.aspx文件中:

public partial class _Default : Page
{
    public void Page_Load(object sender, System.EventArgs e)
    {
        // Change the current path so that the Routing handler can correctly interpret
        // the request, then restore the original path so that the OutputCache module
        // can correctly process the response (if caching is enabled).

        string originalPath = Request.Path;
        HttpContext.Current.RewritePath(Request.ApplicationPath, false);
        IHttpHandler httpHandler = new MvcHttpHandler();
        httpHandler.ProcessRequest(HttpContext.Current); //**HERE**
        HttpContext.Current.RewritePath(originalPath, false);
    }
}
提问于
用户回答回答于

尝试在web.config中的<assemblies>部分添加引用。

用户回答回答于

在web.config中添加以下内容

<configuration>
  <system.web>
    <compilation>
      <assemblies>
        <add assembly="System.Data.Entity, Version=3.5.0.0, Culture=neutral,PublicKeyToken=b77a5c561934e089"/>
      </assemblies>
    </compilation>
  </system.web>
</configuration>

扫码关注云+社区