C# – Is the combination of ADO.NET Entity Framework and ASP.MVC wrong by any chance

asp.net-mvccentity-framework

I have one solution with three projects.

  1. DomainModel (C# Library with ADO.NET Entity Framework)
  2. DomainModelTest (Unit Testing for Business Logic)
  3. WebApp (Using DomainModel)

For some reason, I cannot even bring the view if I pass any of the objects in the DomainModel, not even simple. I get the error below:

Any ideas?

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;

I thought this might be helpful, the actual error comes up on the Default.aspx file in the line pointed below:

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);
    }
}

Best Answer

Try adding the reference in your web.config, in the < assemblies > section.