Olá, Mariana.
Tudo bem?
Pelo erro apresentado na imagem do Postman e pela descrição do seu problema, parece que há uma desconexão entre o que você está enviando através do Postman e o que o seu controlador está esperando receber.
O erro System.ArgumentNullException: Value cannot be null. (Parameter 'password')
sugere que, embora a senha esteja sendo enviada no body da requisição, ela não está sendo capturada corretamente pelo método no controlador. Isso pode acontecer por alguns motivos, mas vamos verificar alguns pontos que podem ajudar a resolver:
Verifique a Model CreateUsuarioDto
: Certifique-se de que a model CreateUsuarioDto
está corretamente configurada para receber os dados que você está enviando. As propriedades na model devem ter os mesmos nomes e tipos que os dados no JSON enviado pelo Postman.
Confira o Binding no Método do Controlador: No método CadastraUsuario
do seu controlador, verifique se está utilizando corretamente o atributo [FromBody]
para indicar que os dados devem ser vinculados a partir do corpo da requisição. Por exemplo:
[HttpPost]
public async Task<IActionResult> CadastraUsuario([FromBody] CreateUsuarioDto dto)
{
// seu código
}
Verifique a Serialização JSON: Certifique-se de que o JSON enviado está corretamente formatado. No seu caso, o JSON parece correto, mas é sempre bom revisar se não há espaços ou caracteres extras que possam estar causando o problema.
Confira o Content-Type: No Postman, verifique se o header Content-Type
está definido como application/json
. Isso é crucial para que o ASP.NET Core possa interpretar corretamente o corpo da requisição como JSON.
Depuração: Se possível, coloque pontos de interrupção no início do método CadastraUsuario
para verificar se todos os valores estão sendo recebidos corretamente.
Se após essas verificações o problema persistir, seria interessante compartilhar mais detalhes do seu projeto, como o código fonte, assim conseguiremos elaborar uma resposta mais assertiva.
Espero que essas dicas ajudem a resolver o problema! Bons estudos!