Frage

Ich bin mit Microsoft MVC und C #. Ich habe ein Usercontrol (example.ascx) erstellt und an der Spitze Ich bin vererben System.Web.MVC.ViewUserControl<PostTransferViewModel>

Jetzt, während mein Modellname Viewusercontrol angehängt wird, erhalte ich „Der Name‚Model‘existiert nicht im aktuellen Kontext“ und „Der Name‚Html‘existiert nicht im aktuellen Kontext. Wenn ich die <PostTransferViewModel> entfernt vom Ende des Viewusercontrol dann funktioniert alles gut, aber ich muss <PostTransferViewModel>.

    <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<PostTransferViewModel>" %>

<div class="postTransferTank">
    <h2>
        Approved Post Transfers</h2>
    <% if (Model.ApprovedPostTransfers.Count() == 0)
       { %>
    <span class="emptyList">There are currently no approved Post Transfers for this tank.</span><br />
    <% } %>
    <% else
        { %>
    <%=Html.DisplayFor(x => x.ApprovedPostTransfers,"PostTransferList") %>
    <% } %>
    <br />
    <%=Html.ActionLink<PostTransferController>(x => x.NewPostTransfer(), "Enter Post Transfer", new { @class = "create-link" })%>
    <br />
    <% if (Model.DraftPostTransfers.Count() != 0)
       { %>
    <h2>
        Draft Post Transfers</h2>
    <%=Html.DisplayFor(x => x.DraftPostTransfers, "PostTransferList") %>
    <% } %>
</div>
War es hilfreich?

Lösung

Dieses Forum Beitrag hat eine mögliche Lösung für Ihr Problem :

  

Manchmal ist Intellisense nicht angezeigt,   in aspx/ascx/master Dateien, wenn es   ein Übersetzungsfehler in der   Anwendung. Wenn Sie versuchen, den Lauf   Website und Sie erhalten einen Kompilierungsfehler   von ASP.NET, versuchen es zu reparieren und dann   sehen, ob es funktioniert.

     

Wenn die App zuvor mit   ASP.NET MVC Beta und später geändert   die vollständig freigegebene Version zu verwenden   es ist dann sehr wahrscheinlich auch, dass   gibt es ein Konfigurationsproblem. Versuchen   Vergleich der beiden web.config-Dateien in   Das Projekt (ein in der Wurzel und ein   im Ordner Sichten) und sehen, ob es   irgendwelche Unterschiede zwischen ihnen.

Andere Tipps

Ich hatte das gleiche Problem ...

In meiner web.config-Datei hatte ich nur die regulären platziert Namensräume im Knoten ...

    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />

Sobald ich hinzugefügt, dies zu meinem Knoten der Fehler ging weg ...

pages validateRequest="false"
    pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
    pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
    userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
  <controls>
    <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
  </controls>

Ich hoffe, das jemand heraus hilft. Ich war für ein paar Stunden stecken versuchen, dies herauszufinden.

<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
  <parameters>
    <parameter value="v11.0" />
  </parameters>
</defaultConnectionFactory>

Lösung für dieses Problem

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top