我想验证操作中是否存在参数。
public string PorCarrera([Required] DateTime fechaDesde, [Required] DateTime fechaHasta, string carrera = null) {
return InformacionInscripcionesViewModel.GetTotalesInscripcionesPorCarrera(fechaDesde, fechaHasta, carrera);
}
我希望框架在没有参数的情况下调用动作时抛出BadRequest
,但它没有发生。
所有示例都讨论modelState.IsValid
,但我没有任何代表此数据的模型,因为这些只是对数据库的查询。
答案 0 :(得分:1)
您需要做一个模型来表示您的参数。像这样:
public class PorCarreraModel
{
[Required]
DateTime fechaDesde { get; set; }
[Required]
DateTime fechaHasta { get; set; }
string carrera { get; set; }
}
然后你可以让你的控制器动作如下:
public IActionResult PorCarrera(PorCarreraModel model) {
if(ModelState.IsValid == false)
{
return BadRequest(ModelState);
}
string totals = InformacionInscripcionesViewModel.GetTotalesInscripcionesPorCarrera(model.fechaDesde, model.fechaHasta, model.carrera);
return Content(totals);
}