【发布时间】:2020-09-03 21:39:28
【问题描述】:
在我的实体模型中,我有一个必需的属性:
[Required]
public string Occupation { get; set; }
我有一个OnPostAsync 方法,如果用户提交无效信息则返回页面
if (!ModelState.IsValid)
{
return Page();
}
如果禁用 javascript(运行服务器端验证)并提交包含空白职业字段的表单,我会收到以下错误:
An unhandled exception has occurred while executing the request.
System.NullReferenceException: Object reference not set to an instance of an object.
如果我改为返回 RedirectToPage(),一切都很好,但我没有在客户端上显示错误消息。
微软官方文档只是return Page()。为什么我会收到未处理的异常,以及如何在避免它们的同时保留客户端上的验证错误?
【问题讨论】:
-
试用了一个小应用。工作正常。除非您在 cshtml 中使用某些对象(即 ViewBag)的某些属性,该属性在返回 Page() 时设置为 null
-
由于您没有提供详细的代码,我们无法确定问题的原因。建议您将本期涉及的所有代码提供给我们。
标签: c# .net asp.net-core razor .net-core