2017-06-15 4 views
0

Ich brauche eine _LayoutPage mit einem Menü based auf Benutzer-Erlaubnis, die ich vom Server lese.Html.Action innerhalb _SharedLayout zu partialView mit Controller

i finden this Artikel und versuchen, es zu implementieren

grundsätzlich Aufbau eine Aktion aufrufen, dass die Erlaubnis Suche Benutzer an die Steuerung und eine Teilansicht zurückzukehren, die nur einen Teil davon machen ist Element

dies die Struktur ist: structure

dies der _ Layout Körper:

<body> 
    @Html.Action("RenderMenu", "MasterController") 
    <div id="bodyMasterPage"> 
     @RenderBody(); 

    </div> 
    <div id="footerMasterPage"> 

    </div> 
</body> 

intestazione ist meine Teilansicht, ziemlich leer für jetzt

MasterController:

public class MasterController : Controller 
    { 
     public ActionResult RenderMenu() 
     {   
      { 
       return PartialView("Instestazione", null); 
      } 
     } 
    } 

und Testcontroller

public class TestController : Controller 
    { 
     public IUnitOfWork myUow; 
     // GET: WebMVC/Test 

     public TestController(IUnitOfWork uow) 
     { 
      myUow = uow;    
     } 

     public ActionResult Index() 
     { 
      myUow.Area.Read(1); 
      return View(); 
     } 
    } 

jetzt, wenn ich öffne http://localhost:61599/WebMVC/Test/Index diesen Fehler:

The controller for path '/WebMVC/Test/Index' was not found or does not implement IController. 
Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere la traccia dello stack. 

Dettagli eccezione: System.Web.HttpException: The controller for path '/WebMVC/Test/Index' was not found or does not implement IController. 

Errore nel codice sorgente: 


Riga 16: </head> 
Riga 17: <body> 
Riga 18: @Html.Action("RenderMenu", "MasterController") 
Riga 19: <div id="bodyMasterPage"> 
Riga 20:  @RenderBody(); 

die seit spricht von Testcontroller seltsam erscheinen, und wenn ich Html.Action Code (@Html.Action("RenderMenu", "MasterController")) alla arbeitet

fein entfernen Warum MasterController

Antwort

0

Problem ist hier: @Html.Action("RenderMenu", "MasterControler")

Controller Suffix

nicht verwendet werden müssen

Ich nehme Code von Link ohne viel Aufmerksamkeit

Verwandte Themen