MVC 4 Area Routing funktioniert nicht

9

Ich habe eine leere MVC4-Anwendung erstellt, alle Dinge funktionieren gut, danach füge ich meinem Projekt einen Bereich "Moderator" hinzu. Mein Bereich Routing-Code ist wie folgt:

%Vor%

Und mein Global.asx-Code ist wie folgt:

%Vor%

Aber jetzt möchte ich auf das

zugreifen %Vor%

Es zeigt eine Fehlerseite wie diese

%Vor%     
Waqas Idrees 08.10.2013, 05:47
quelle

5 Antworten

6
___ qstntxt ___

Ich habe eine leere MVC4-Anwendung erstellt, alle Dinge funktionieren gut, danach füge ich meinem Projekt einen Bereich "Moderator" hinzu. Mein Bereich Routing-Code ist wie folgt:

%Vor%

Und mein Global.asx-Code ist wie folgt:

%Vor%

Aber jetzt möchte ich auf das

zugreifen %Vor%

Es zeigt eine Fehlerseite wie diese

%Vor%     
___ qstnhdr ___ MVC 4 Area Routing funktioniert nicht ___ answer28630633 ___

Überprüfen Sie die %code% Ihres Controllers.

Ich hatte Code in einen Bereich verschoben und der Namespace zeigte immer noch den alten Speicherort.

ReSharper hat eine sehr coole Option, um die Namespaces aller Dateien in dem Ordner, Projekt oder der Lösung zu reparieren! Es ist sehr praktisch, dies zu beheben.

    
___ antwort19240305 ___

Ich hatte das gleiche Problem. Sie schauen auf App_Start / RouteConfig.cs und fügen oben diesen Code AreaRegistration.RegisterAllAreas ();

hinzu %Vor%

Erstellen Sie erstellen Bereiche / Moderator / Controller / DashboardController.cs

%Vor%

und erstellen

Bereiche / Moderator / Ansichten / Dashboard / Index.cshtml

Sie müssen auch Web.config unter Bereiche / Moderator / Ansichten / Web.config ...

haben     
___ tag123aspnetmvc ___ Das ASP.NET MVC Framework ist ein Open-Source-Webanwendungsframework und Tooling, das eine auf Webanwendungen basierende Version des Model-View-Controller (MVC) -Musters implementiert und auf einer ASP.NET-Technologiegrundlage aufbaut. ___ tag123c ___ C # (sprich "Cis") ist eine objektorientierte Programmiersprache auf hohem Niveau, die für die Erstellung einer Vielzahl von Anwendungen entwickelt wurde, die auf dem .NET Framework (oder .NET Core) ausgeführt werden. C # ist einfach, leistungsfähig, typsicher und objektorientiert. ___ answer25359363 ___

Fügen Sie einfach den benannten Parameter "namespace:" in %code% method von %code% in %code% hinzu. Und geben Sie den Wert von "namespace" in den Namespace Ihres Controllers ein, in dem Sie die Aktionsmethode aufrufen möchten. Im folgenden Beispiel möchte ich die Methode %code% in Village Controller vom Stamm des Projekts aufrufen.

%Vor%     
___ tag123aspnetmvcrouting ___ Fragen zum Routing innerhalb von ASP.NET (einschließlich MVC). ___ tag123c40 ___ C # 4.0 führte Funktionen wie dynamische Objekte, COM-Interoperabilitätsverbesserungen, generische Co- und Contravarianz, optionale und benannte Parameter ein. Verwenden Sie dieses Tag, wenn sich Ihre Frage speziell auf C # 4.0-spezifische Features bezieht. Das C # -Tag sollte verwendet werden, wenn Ihre Frage nicht für C # 4.0-Funktionen spezifisch ist. ___ answer33053782 ___

Stellen Sie sicher, dass in Projekteigenschaften & gt; Web & gt; Start Aktion & gt; wenn eine bestimmte Seite | Aktion | url ist definiert, es stimmt mit zugeordneten Routen überein.

    
___ tag123aspnetmvc4 ___ ASP.NET MVC 4 ist die vierte Hauptversion der ASP.NET Model-View-Controller-Plattform für Webanwendungen. ___ answer21553576 ___

Versuchen Sie einfach, Inhalte aus folgenden Verzeichnissen zu löschen: hier und rebuild-Projekt

  

C: \ Temp C: \ Benutzer \% Benutzername% \ AppData \ Local \ Microsoft \ VisualStudio   C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporäre ASP.NET-Dateien   C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporäres ASP.NET   Dateien Path \ To \ Your \ Project \ obj \ Debug

    
___
ruda_k 08.10.2013, 06:08
quelle
8

Überprüfen Sie die namespace Ihres Controllers.

Ich hatte Code in einen Bereich verschoben und der Namespace zeigte immer noch den alten Speicherort.

ReSharper hat eine sehr coole Option, um die Namespaces aller Dateien in dem Ordner, Projekt oder der Lösung zu reparieren! Es ist sehr praktisch, dies zu beheben.

    
Jess 20.02.2015 13:54
quelle
1

Versuchen Sie einfach, Inhalte aus folgenden Verzeichnissen zu löschen: hier und rebuild-Projekt

  

C: \ Temp C: \ Benutzer \% Benutzername% \ AppData \ Local \ Microsoft \ VisualStudio   C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporäre ASP.NET-Dateien   C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporäres ASP.NET   Dateien Path \ To \ Your \ Project \ obj \ Debug

    
Tomasz Maj 04.02.2014 13:15
quelle
0

Fügen Sie einfach den benannten Parameter "namespace:" in RegisterRoutes() method von RouteConfig.cs in App_Start hinzu. Und geben Sie den Wert von "namespace" in den Namespace Ihres Controllers ein, in dem Sie die Aktionsmethode aufrufen möchten. Im folgenden Beispiel möchte ich die Methode Index() in Village Controller vom Stamm des Projekts aufrufen.

%Vor%     
Prasad Harke 18.08.2014 08:46
quelle
0

Stellen Sie sicher, dass in Projekteigenschaften & gt; Web & gt; Start Aktion & gt; wenn eine bestimmte Seite | Aktion | url ist definiert, es stimmt mit zugeordneten Routen überein.

    
Antoine Meltzheim 10.10.2015 12:06
quelle