ASP.NET MVC Routing und Bereiche
-
06-07-2019 - |
Frage
Ich bin Herumspielen mit ASP.NET MVC 2 Preview 2 und ich versuche, herauszufinden, wie Routing mit Bereichen und so funktioniert. In einem einzigen Projekt Implementierung von Bereichen, möchte ich einen Bereich namens „admin“.
Ich versuche, der Lage sein, Urls wie diese haben:
(root)/admin/apples/search
(root)/admin/apples/edit/3
(root)/admin/apples/add
(root)/admin/oranges/search
(root)/admin/oranges/edit/5
(root)/admin/oranges/add
(root)/admin
Ich habe das Gebiet erstellt. Ich habe den erstellten Controller mit ihren jeweiligen Ansichten, aber es ist das Routing, die ich nicht scheinen kann. Jede Beratung, wie ich würde eine solche Routing erreichen?
Ich bin sicher, dass dies für einige extrem einfach sein, aber ich habe nicht zu viel Glück gehabt Beispiele zu finden, die über die grundlegenden Sachen gehen.
Danke!
Neben der Frage (2009.10.25) Ich frage im Grunde, was Strecken und in welcher Reihenfolge würde ich in der Gegend AreaRegistration Klasse einrichten? Ich habe alles getan, was bisher genannten, aber ohne Ergebnisse.
Lösung
Registerbereiche in einzelnen Projekt
Sie müssen hinzufügen routes.cs zum Admin-Bereich Ordner-Datei.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcAreasSingleProject.Areas.Admin
{
public class Routes : AreaRegistration
{
public override string AreaName
{
get { return "admin"; }
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"admin_default",
"admin/{controller}/{action}/{id}",
new { controller = "Admin", action = "Edit", id = "" }
);
}
}
}
Andere Tipps
http://haacked.com/archive/2009 /07/31/single-project-areas.aspx
routes.MapAreaRoute("Forums", "admin_area", "admin/{controller}/{action}/{id}", new { controller = "apples", action = "search", id = "" }, new string[] { "Project.Areas.Admin.Controllers" });