Wenn ich eine Controller-Aktion wie diese habe.MVC Aktion ungültige Argumente gibt ArgumentException 500 statt 404
public ActionResult _Files(long parentid)
{
Wenn Sie die Aktion von einem Browser ohne eine Parentid aufrufen. Es wirft ein System.ArgumentException und eine 500-Antwort
Der Parameter Wörterbuch Parameter ‚parentid‘ von nicht-NULL festlegbaren Typ ‚System.Int64‘ für Verfahren ‚einen Nulleintrag enthält System.Web.Mvc.ActionResult _Files
Die Aktion soll NICHT ohne Design von PARENTID aufgerufen werden. Gibt es eine Möglichkeit, eine Ausnahme nicht zu werfen (und 500 Antwort zurückgeben) und stattdessen eine 400 schlechte Anfrage oder eine 404 nicht gefunden (von denen beide mehr Sinn IMO Sinn machen würde). Auf der Suche nach einer Lösung, die dies in der gesamten Webanwendung auf generische Weise tun würde?
Werfen Sie es nicht, geben Sie ein 'neues HttpStatusCodeResult' zurück ... – Haney
@DavidHaney Ja das ist, was ich meinte. – DarthVader
wie gesagt, ich suche nach einer Lösung, die die Anwendung überspannt. Designell sollte Parentid nicht null sein. Und ich werde das in den 100's der Aktionen, die ich habe, tun müssen, die Longs oder Ints von Design akzeptiert! – MoXplod