gpt4 book ai didi

c# - 有效电子邮件地址的 DataAnnotations

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:12 25 4
gpt4 key购买 nike

我正在为我的表单使用数据注释,用户可以在其中注册他们的帐户。对于电子邮件字段,我有一个数据注释用于必填,一个用于有效电子邮件。在这里你可以在我的 View 模型中看到:

    [Required(ErrorMessage = "The Email field is required.")]
[EmailAddress(ErrorMessage = "The Email field is not a valid e-mail address.")]
public string Email { get; set; }

在我看来,我有以下代码:

<form asp-controller="Home" asp-action="RegisterAsync" method="post" class="register-form">
<br />
<img src="~/images/logo.png" width="300" />
<br />
<br />

<div class="text-danger">
@ViewBag.FailedToRegister
</div>

<div class="form-group">
<input asp-for="Name" placeholder=@Localizer["Name"] class="form-control" />
<span asp-validation-for="Name" class="text-danger"></span>
</div>

<div class="form-group">
<input asp-for="Email" placeholder="Email" class="form-control" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
// Removed code for brevity

现在,当我运行我的应用程序并将电子邮件字段留空时,我会收到如下所示的错误消息。

Correct email error message

但是,当我填写的内容不是有效的电子邮件地址时,我不会收到与上面相同的错误文本,而是会收到以下内容。

Wrong email error message

(对不起,荷兰语消息,这意味着:需要一个有效的电子邮件地址。)

但为什么我没有收到我在 ViewModel 中编写的消息,我该如何解决这个问题?

我也试过改

[EmailAddress(ErrorMessage = "The Email field is not a valid e-mail address.")]

在我的 View 模型中

[DataType(DataType.EmailAddress, ErrorMessage = "The Email field is not a valid e-mail address.")]

,但没有运气。

最佳答案

您看到的意外验证来自您的浏览器。如果您将“novalidate”属性添加到您的表单,它将禁用它:

例如

<form asp-controller="Home" asp-action="RegisterAsync" method="post" class="register-form" novalidate>

关于c# - 有效电子邮件地址的 DataAnnotations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53815532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com