É possível postar um objeto em uma Razor Page a partir de uma Form
tag?
Digamos que eu tenha esta página com o OnPost
manipulador para gerar arquivo PDF
CsHtml:
@page "/generate-report"
@model GeneratePdfModel
@{
}
C#:
namespace MyApp
{
public class GeneratePdfModel : PageModel
{
public void OnPost(Data data)
{
// Do stuffs with data and return PDF File result
}
}
}
Então tenho outra página com o formulário abaixo:
<form action="/generate-report" method="post">
<!-- How to send a Data object -->
<button type="submit">Export</button>
</form>
Como posso postar um objeto de dados do Form
?
Para vincular um
Data
objeto ao parâmetro do seuOnPost
método, você precisa aderir às convenções de nomenclatura para os campos do formulário. Você não forneceu detalhes do seuData
objeto, o exemplo assume que ele tem a seguinte definição:Você precisa garantir que o
name
atributo tenha a seguinte estrutura:[Name of object to be bound].[Name of property]
Assim, seu formulário ficará assim:
Você pode usar o auxiliar de tag de entrada para garantir que o atributo de nome seja renderizado corretamente.
Mais informações: https://www.learnrazorpages.com/razor-pages/model-binding