Frage

Ich habe eine Route, die ich über RedirectToRoute wie folgt aufrufe:

return this.RedirectToRoute("Super-SuperRoute", new { year = selectedYear });

Ich habe auch versucht:

 return this.RedirectToRoute("Super-SuperRoute", new { controller = "Super", action = "SuperRoute", id = "RouteTopic", year = selectedYear });

Die Route in der global.asax sieht folgendermaßen aus:

routes.MapRoute(
    "Super-SuperRoute", // Route name
    "Super.mvc/SuperRoute/{year}",  // URL with parameters
     new { controller = "Super", action = "SuperRoute", id = "RouteTopic" }  // Parameter defaults
);

Warum erhalte ich also die Fehlermeldung:„Keine Route in der Routentabelle entspricht den angegebenen Werten.“?

Ich habe gesehen, dass der Typ von selectedYear var war.Als ich versuchte, mit int.Parse in int zu konvertieren, wurde mir klar, dass selectedYear tatsächlich null war, was die Probleme erklären würde.Ich denke, das nächste Mal werde ich den Werten der Variablen an einem Haltepunkt mehr Aufmerksamkeit schenken :)

War es hilfreich?

Lösung

Welcher Typ ist selectedYear?Eine DateTime?Wenn ja, müssen Sie möglicherweise in eine Zeichenfolge konvertieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top