Nella mia applicazione API ASP.NET MVC, posso restituire un utile ErrorResponse
se alcuni dei miei Required
campi mancano:Tornando una risposta di errore nel caso di un modello nullo
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
-
"Message": "The request is invalid.",
"ModelState": {
"myModel.FooA": [
"The FooA is required."
],
"myModel.FooC": [
"The FooC property is required."
],
"myModel.FooD": [
"The FooD property is required."
]
}
Tuttavia, come this answer conferma, un modello NULL volontà validate. Siccome non lo permetto, come posso restituire una risposta di errore altrettanto utile che afferma tutti i valori richiesti? So che posso aggiungere manualmente un errore ModelError per ogni proprietà, ma ho il sospetto che ci possa essere un modo in cui lo CreateErrorResponse
può farlo per me.
Ciao @ Jonathan. Il riferimento sopra ha un controllo se il modello non è nullo. Nel caso sia nullo, puoi controllare il suggerimento qui sotto. –
Puoi chiamare 'Controller.ValidateModel (new MyClass())' se il tuo oggetto è nullo? (nb, 'ValidateModel' è un metodo sulla classe' Controller'). vedi http://stackoverflow.com/questions/6360087/manually-invoking-modelstate-validation – wal
non esiste un modo automatico per ottenere ciò che desideri. è necessario un legatore di modelli personalizzato –