net core处理表单两种验证方式提交

问题描述 投票:0回答:1

我正在使用 razor 页面来构建我的应用程序 我坚持表单验证的情况是:
我创建了一个包含许多输入字段的一页,
其中之一是手机号码 对于这个字段,它应该是最多10位数字并且它是required,

对于那个表格,有两个按钮,
一种是仅当所有字段都有效时才提交表单,
第二个按钮是'save for later',这里所有字段都必须有效 除了必需的属性外,它是可选的, 我的意思是对于手机号码字段,如果它是空的就可以,但是如果超过 10 位就应该显示错误。

我知道我可以使用具有不同视图模型和验证的不同页面 但我想在一页中处理它。

那么处理这种情况的最佳方法是什么?

.net validation .net-core razor-pages core
1个回答
0
投票

如果你分享你的模型和控制器,你可以帮助我给出更好的答案。 但乍一看,我认为您必须删除

Required
字段的
MobileNumber
属性,因为它在您的数据库中应该是
nullable

删除

Required
属性后,尝试在您的第一个场景中手动处理空检查,您有一堆解决方案,其中一个简单的解决方案是使用
if
并抛出一个
exception
或使用
FluentValidation
.

© www.soinside.com 2019 - 2024. All rights reserved.