5 Stimmen

Wie konfiguriert man eine URL mit 3 Ebenen in ASP.NET MVC?

Mit ASP.NET MVC, muss ich meine URLs wie folgt konfigurieren:

www.foo.com/company : render View Unternehmen

www.foo.com/company/about : render View Unternehmen

www.foo.com/company/about/mission : render View Mission

Wenn "Unternehmen" mein Controller ist und "über" meine Aktion, was sollte dann "Mission" sein?

Für jeden "Ordner" (Unternehmen, About und Mission) muss ich eine andere Ansicht erstellen.

Weiß jemand, wie ich das machen kann?

Danke!

4voto

James Kolpack Punkte 9205

Richten Sie zunächst Ihre Ansichten ein:

Views\
  Company\
    Index.aspx
    About.aspx
    Mission.aspx
    AnotherAction.aspx

In Ihrer Methode GlobalAsax.RegisterRoutes(RouteCollection routes):

public static void RegisterRoutes(RouteCollection routes)
{
  // this will match urls starting with company/about, and then will call the particular
  // action (if it exists)
  routes.MapRoute("mission", "company/about/{action}",
        new { controller = "Company"});
  // the default route goes at the end...
  routes.MapRoute(
    "Default",                                              // Route name
    "{controller}/{action}/{id}",                           // URL with parameters
    new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
  );
}

Im Controller:

CompanyController
{
  public ViewResult Index() { return View(); }
  public ViewResult About() { return View(); }
  public ViewResult Mission() { return View(); }
  public ViewResult AnotherAction() { return View(); }
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X