Ich entwickle eine Anwendung in der ASP.NET
MVC
C#
auf der .NET 4
Rahmen.C# MVC - Routing Problem/Verwirrung
Ich verwirrt in routing
und ich mache die Forschung und entwickelte die eine Demo-Version Es funktioniert, wie ich will, aber ich möchte wissen, welche Methode Best Practice für die Entwicklung von Anwendungen ist.
Zuerst registrieren ich die Route wie folgt aus:
routes.MapRoute(
name: "RoutesTesting",
url: "{controller}/{action}/{a}/{b}/{c}/{d}/{e}",
defaults: new { controller = "Home", action = "Test", e = UrlParameter.Optional }
);
ich eine Klasse, die die Eigenschaften haben, und es ist Name identisch mit dem Parameter der Route.
class MyClass{
public string a{get;set;}
public string b{get;set;}
public string c{get;set;}
public string d{get;set;}
public string e{get;set;}
}
Jetzt habe ich die Tow-Methoden erstellt, die funktioniert finden und die Daten von der URL erfolgreich erhalten.
Methode 1:
public ActionResult Test(MyClass objMyClass){
}
Methode 2:
public ActionResult Test(string a,string b,string c,string d,string e=String.Empty){
}
Meine Frage ist:
routet das Gespräch in meiner Aktionsmethode zu tun? Wie konvertiert er die Parameterwerte in den Eigenschaften des MyClass-Objekts?
Welche Methode wird empfohlen?
Wird Methode 1 einen Fehler oder eine Ausnahme auslösen, wenn die Konversation nicht möglich ist?
Vielen Dank im Voraus ...
Ich glaube, ich habe noch nie eine gute URL mit so vielen '/' gesehen. Methode 2 ist das, was ich normalerweise für eine Route verwenden würde. Ich würde nur Methode 1 für einen POST eines Modells zurück zum Server verwenden. –
Okay Danke @AshleyMedway. Die Methode 2 ist also gut zu benutzen. –
Nun, wenn beide funktionieren, kannst du benutzen, was immer du willst ... –