C# ASP.NET核心服务器端验证:System.NullReferenceException
在我的实体模型中,我有一个必需的属性:C# ASP.NET核心服务器端验证:System.NullReferenceException,c#,.net,asp.net-core,razor,.net-core,C#,.net,Asp.net Core,Razor,.net Core,在我的实体模型中,我有一个必需的属性: [Required] public string Occupation { get; set; } 我有一个OnPostAsync方法,如果用户提交了无效信息,它将返回页面 if (!ModelState.IsValid) { return Page(); } 如果禁用javascript(运行服务器端验证)并提交一个带有空白占用字段的表单,则会出现以下错误: An unhandled exception has occurred while ex
[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()
,一切正常,但我没有在客户端上显示错误消息
官方的microsoft文档只是
返回页面()
。为什么会出现未处理的异常,以及如何在避免错误的同时保留客户端上的验证错误?创建自己的自定义验证并检查字段,即字段是否为空
文档链接:
请参阅此视频:尝试了一个小应用程序。很好。除非您在cshtml中使用某个对象(即ViewBag)的某些属性,该属性在返回Page()时设置为null,因为您没有提供详细的代码,否则我们无法确定问题的原因。我建议您向我们提供该问题涉及的所有代码的参考。