1
resposta

Enviar Model List e Receber Post Model List

Bom dia, professor tudo bom, estou desenvolvendo um site de convênio e nele eu faço a seguinte operação, um upload de um arquivo .csv contendo os dados dos funcionários e em seguida eu carrego esses dados em outra pagina uma pagina de visualização, mostrando o que foi importado da planilha, em uma tabela do html, após essa exibição o usuario pode confirmar se os dados estão OK, para que eu faça um post da tabela, so que quando eu espero um list ele não chega, sabe me informar se existe alguma maneira de eu enviar de volta a lista que eu estou exibindo?

1 resposta

Olá Valdriano

Para enviar a lista de volta para o servidor, você pode utilizar o recurso de formulários no HTML. Você pode criar um formulário com um campo oculto que irá armazenar a lista de dados que você está exibindo na tabela.

Por exemplo, supondo que você tenha uma lista de funcionários chamada "listaFuncionarios", você pode criar um campo oculto no formulário da seguinte maneira:

<form method="post" action="/confirmar-dados">
  <!-- outros campos do formulário -->
  <input type="hidden" name="listaFuncionarios" value="@Json.Serialize(listaFuncionarios)" />
  <button type="submit">Confirmar</button>
</form>

No exemplo acima, estamos utilizando a função @Json.Serialize para converter a lista de funcionários em uma string JSON e armazenando-a no campo oculto.

No lado do servidor, você pode receber a lista de funcionários no controller utilizando o mesmo nome do campo oculto:

[HttpPost]
public IActionResult ConfirmarDados(List<Funcionario> listaFuncionarios)
{
  // faça o que for necessário com a lista de funcionários
  return RedirectToAction("PaginaDeSucesso");
}

Dessa forma, a lista de funcionários será enviada de volta para o servidor e você poderá utilizá-la no método ConfirmarDados do seu controller.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software