2016-04-12 2 views
0

ich verwende MVC 4, habe ich ein Admin-Ordner und mein Controller-Aktionen verweisen die Ansichten im Admin-Ordner wie:Wie erstellt man einen Admin-Ordner für alle Admin-bezogenen Controller?

/controllers/admin/UserController.cs 

Meine Ansichten sind hier:

/views/admin/users/index.cshtml 

Mein Controller-Aktion aussieht wie:

public ActionResult Index() 
{ 
    return View("~/Views/Admin/Users/Index.cshtml"); 
} 

Wie kann ich jetzt Setup die Routen für alle meine Admin-Controller, so dass die URL der ‚Admin‘ Ordner in der URL hat:

http://localhost/admin/user/index 

Hinweis: MVC 4 hat keine "Bereiche".

+0

Ähnlich? http://StackOverflow.com/a/4372800/881798 – vendettamit

Antwort

3

Was Sie suchen, ist Gebiete.

Areas können Sie logisch verwandten Code gruppieren. Sie können es als Sub-MVC-App mit Controllern & Ansichten innerhalb Ihrer MVC-App vorstellen.

Sie können einfach einen Bereich namens "Admin" erstellen. Sie werden in der Lage sein, Controller & Ansichten darin zu erstellen. Wenn Sie den Bereich erstellen, fügt Visual Studio automatisch die Routendefinition für diesen Bereich hinzu, die den Gebietsnamen (Admin) in der Route enthält. Innerhalb des Bereichs (~/Areas/Admin) können Sie eine Klasse namens "AdminAreaRegistration.cs" sehen, in der die Routendefinition für diesen Bereich definiert ist.

+0

MVC4 hat keine Bereiche, oder? –

+3

MVC4 * hat * Bereiche, sie wurden in MVC 2 eingeführt. –

+0

Travis ist richtig. Führen Sie einfach eine Google-Suche https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=asp.net%20mvc%20areas%20mvc%204 durch – Shyju

Verwandte Themen