Man kann anstatt eines QueryStrings in MVC mittels RouteConfig oder dem MVC Routing direkt über den Actions Pfade definieren und Variablen mit Slash wie Verzeichnisse übergeben statt mit „?“ und „&“ getrennt. Doch wie greift man auf diese dann zu? Hat sich als schwerer bzw. weniger intuitiv als gedacht herausgestellt
//in RouteConfig.cs
routes.MapRoute(
name: "DefaultEmptyOrWithCustAndOrUser",
url: "{controller}/{action}/{Customer}/{User}",
defaults: new { controller = "Home", action = "Index", Customer = UrlParameter.Optional, User=UrlParameter.Optional }
);
//example URL
http://localhost/UserMgmt/EditUser/COMPANYID/USERID
//access it from anywhere
var accessTheVariableAnywhere = HttpContext.Current.Request.RequestContext.RouteData.Values["Customer"];

Schreibe einen Kommentar