Validações no C#/ASP NET
Bom dia pessoas, tudo bem? Espero que sim. Estou trabalhando em APIs com C# mais especificamente asp net 4.7, e eu gostaria de saber se preciso ou como fazer algumas validações dentro da minha controller, por exemplo: A Model de usuario tem nome, email, e cpf.
Nesse caso pra mim existem alguns problemas como: Cpf pode estar null ou com uma string com espaço (" ") então o certo é fazer 2 validações para o CPF? ou o Asp net valida pra mim caso o valor não seja númerico.
Então pensando nisso, eu preciso fazer 3 ifs cada um verificando se os atributos estão preenchidos ou o asp net faz isso pra mim?
Isso tudo que perguntei depende de versão? Porque eu lembro de ter feito uma API em asp net core e ter esse tipo de validação, mas gostaria de uma certeza sobre esse assunto. Perdoem caso tenho feito a pergunta mal feita ou que ela tenha ficada confusa, não sou muito com Fóruns.
Obrigado pela atenção!
OBS: Não coloquei aqui que o CPF tem que ser válido porque isso seria uma validação que eu já sei que preciso fazer.
Segue um exemplo de código:
[HttpPost]
[Route("gravar")]
public async Task<IHttpActionResult> GravarTerceiroAutorizado(Usuario model)
{
if (model.CPF != null)
{
return BadRequest("O CPF fornecido é inválido.");
}
try
{
var retorno = await _usuarioService.GravarUsuario(model);
if(retorno == "Gravou")
return Ok(new { message = "Usuario cadastrado com sucesso." });
else
return Ok(new { message = "Autorização do terceiro editada com sucesso." });
}
catch (Exception ex)
{
return BadRequest($"Desculpe, ocorreu um erro ao processar sua solicitação: {ex.Message}");
}
}