La combinaison de ADO.NET Entity Framework et ASP.MVC est-elle erronée par hasard?

asp.net-mvc c# entity-framework

Question

J'ai une solution avec trois projets.

  1. DomainModel (bibliothèque C # avec ADO.NET Entity Framework)
  2. DomainModelTest (Test unitaire pour la logique métier)
  3. WebApp (Utilisation de DomainModel)

Pour une raison quelconque, je ne peux même pas afficher la vue si je laisse passer l'un des objets du DomainModel, pas même simple. Je reçois l'erreur ci-dessous:

Des idées?

Message d'erreur du compilateur: CS0012: le type 'System.Data.Objects.DataClasses.EntityObject' est défini dans un assembly qui n'est pas référencé. Vous devez ajouter une référence à l'assembly 'System.Data.Entity, version = 3.5.0.0, Culture = neutre, PublicKeyToken = b77a5c561934e089'.

Erreur de source:

Ligne 146: Ligne 147:
[System.Runtime.CompilerServices.CompilerGlobalScopeAttribute ()], ligne 148: classe publique views_home_index_aspx: System.Web.Mvc.ViewPage, System.Web.SessionState.IRequiresSessionState, System.Web.I.HHttpHandler {Line 149:
Ligne 150: bool statique privé @__initialized;

J'ai pensé que cela pourrait être utile, l'erreur réelle apparaît sur le fichier Default.aspx dans la ligne indiquée ci-dessous:

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

Réponse acceptée

Essayez d’ajouter la référence dans votre web.config, dans la section <assemblies>.


Réponse populaire

Dans web.config Ajouter ceci

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


Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow