Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
ASP.NET Parameter auf der ersten Route
Andreas@Tricept
myCSharp.de - Member



Dabei seit:
Beiträge: 289

Themenstarter:

ASP.NET Parameter auf der ersten Route

beantworten | zitieren | melden

Hallo,

für meine Website möchte ich auf der ersten URL Ebene eine Stadt angeben können.
Der Stadtname wäre aber nur der Parameter für mein Stadtcontroller.
Auf der ersten Ebene habe ich ansonsten natürlich auch andere Views und Controllerzugriffe.
Daher kann ich die Erste Ebene ja nicht dynamisch gestalten.

Meine Lösung sieht derzeit so aus:


            using (StadtController c = new StadtController())
            {
                foreach (var city in c.GetAvailableCities())
                {
                    routes.MapRoute(
                        name: city.Name,
                        url: city.Name,
                        defaults: new { controller = "Stadt", action = "Index", city = city.Name }
                    );
                }
            }

Das funktioniert auch, nur ist das der Bestpractice?

Die Alternative


            routes.MapRoute(
                name: "Stadt",
                url: "{city}",
                defaults: new { controller = "Stadt", action = "Index"}
            );
funktioniert dann nur für den Stadtcontroller. Andere Controller die auf die erste Ebene eingeschränkt sind gehen dann nicht.

Habt ihr Tipps für mich?
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.752

beantworten | zitieren | melden

Schau Dir IRouteConstraint an.
Damit machst Du Route Lookups, zB auf die Datenbank.
private Nachricht | Beiträge des Benutzers