Desidero restituire un oggetto json dal actionfilter wpi api. Come posso ottenere questo?Asp.net Web API - restituire i dati dal filtro azione
È possibile restituire l'oggetto dall'azione, ma in alcune condizioni è necessario restituire alcuni dati dal filtro azione.
Grazie in anticipo.
Edit: 1 Quando ho cambiato il codice come il seguente, il browser ancora di caricare senza alcuna risposta e finisce in errore di timeout.
public class ValidationActionFilter : ActionFilterAttribute
{
public override void OnActionExecuting(HttpActionContext actionContext)
{
var modelState = actionContext.ModelState;
if (!modelState.IsValid)
{
List<string> arr = new List<string>();
foreach (var key in modelState.Keys)
{
var state = modelState[key];
if (state.Errors.Any())
{
string er = state.Errors.First().ErrorMessage;
if (!string.IsNullOrEmpty(er))
{
arr.Add(er);
}
}
}
var output = new Result() { Status = Status.Error.ToString(), Data = null, Message = arr };
actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.BadRequest, output, actionContext.ControllerContext.Configuration.Formatters.JsonFormatter);
}
}
}
Grazie per la risposta. Si prega di consultare la mia modifica. ancora problema –
Come faccio a farlo in .net core? –
Per me la soluzione di cui sopra non ha funzionato. Il codice nell'azione è stato ancora eseguito. –