模型属性未从Razor页(核心)传递回OnPost方法是指在ASP.NET Core中使用Razor页面进行表单提交时,无法将表单中的模型属性值传递回OnPost方法。
解决这个问题的方法是通过以下步骤进行:
asp-for
属性来绑定模型属性,例如:<input asp-for="ModelProperty" />
确保ModelProperty
与模型中的属性名称一致。
asp-page-handler
属性,并设置为要调用的处理程序方法名称。例如:<form asp-page-handler="OnPostSubmit">
这将确保在提交表单时调用OnPostSubmit
方法。
@page
指令中,确保设置@page "{handler?}"
,其中{handler?}
是可选的处理程序名称。例如:@page "{handler?}"
这将允许在表单提交时调用指定的处理程序方法。
OnPostSubmit
,则应该有以下方法:public IActionResult OnPostSubmit()
{
// 处理表单提交逻辑
return RedirectToPage("Success");
}
在该方法中,可以处理表单提交的逻辑,并返回适当的结果。
总结: 模型属性未从Razor页传递回OnPost方法可能是由于未正确绑定表单元素与模型属性,或者未设置正确的处理程序方法名称所致。通过正确设置表单绑定、处理程序方法名称和后端代码,可以解决这个问题。
腾讯云相关产品推荐:
领取专属 10元无门槛券
手把手带您无忧上云