有效电子邮件地址的最大长度是多少?它是由任何标准定义的吗?
我正在开发一个iPhone应用程序,我需要用户在登录时提供他的电子邮件地址.
检查电子邮件地址是否为有效电子邮件地址的最佳方法是什么?
我正在尝试在我的WPF项目中使用DataAnnotations来指定字符串的最大长度,具体如下:
using System.ComponentModel.DataAnnotations;
Run Code Online (Sandbox Code Playgroud)
但是,我得到了错误
命名空间'System.ComponentModel'中不存在类型或命名空间名称'DataAnnotations'(您是否缺少程序集引用?)
我已经看到了这个命名空间DataAnnotations 中存在的其他示例.我正在使用C#4.我有什么理由不能用这个吗?我该怎么办才能修复它?
错误在:
public partial class Form2 : Form
Run Code Online (Sandbox Code Playgroud)
可能的原因:
public static IChromosome To<T>(this string text)
{
return (IChromosome)Convert.ChangeType(text, typeof(T));
}
Run Code Online (Sandbox Code Playgroud)
尝试(没有静态关键字):
public IChromosome To<T>(this string text)
{
return (IChromosome)Convert.ChangeType(text, typeof(T));
}
Run Code Online (Sandbox Code Playgroud) 在验证电子邮件地址时,我尝试使用以下两个EmailAddressAttribute类System.ComponentModel.DataAnnotations:
[EmailAddress(ErrorMessage = "Invalid Email Address")]
public string Email { get; set; }
Run Code Online (Sandbox Code Playgroud)
和MailAddress类从System.Net.Mail做:
bool IsValidEmail(string email)
{
try {
var addr = new System.Net.Mail.MailAddress(email);
return addr.Address == email;
}
catch {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
按照C# 代码中的建议验证电子邮件地址。这两种方法原则上都有效,它们会捕获无效的电子邮件地址,例如user@,不符合格式的user@host。
我的问题是这两种方法都没有检测到用户字段中的无效字符,例如æ, ø, or å (e.g. åge@gmail.com). 为什么这些字符不返回验证错误有什么原因吗?是否有人对如何在用户字段中合并无效字符的验证有一个优雅的解决方案?
这是我的视图模型中的一个字段:
[Required(ErrorMessage = "Email is missing."), EmailAddress(ErrorMessage = "Email is not valid.")]
public string Email { get; set; }
Run Code Online (Sandbox Code Playgroud)
(EmailAddress来自EmailAddressAttribute.EmailAddressAttribute()类型)
这是HTML的相关部分:
<div>
<label for="inputEmail">EMAIL</label>
<input id="inputEmail" ng-model="email" asp-for="Email" class="form-control" />
</div>
<div>
<span asp-validation-for="Email" class="text-danger"></span>
</div>
Run Code Online (Sandbox Code Playgroud)
当我myemail在电子邮件文本框中键入内容时,会说
电邮无效
但是,在键入时myemail@email,视图模型会将其视为正确的(仅在前端)。
public async Task<JsonResult> Register([FromForm]VisitViewModel vm)
Run Code Online (Sandbox Code Playgroud)
这样正确的转换会使ModelStateon无效,并拒绝电子邮件,因此该部分还可以。
但是根据此答案,前端应将此表示为无效
有人可以解释这里发生了什么吗?我绝对不知所措。
c# email-validation asp.net-mvc-viewmodel asp.net-core-mvc asp.net-core
我希望我的文本框检查输入到文本框中的电子邮件是否有效。
到目前为止,我有:
if (!this.txtEmail.Text.Contains('@') || !this.txtEmail.Text.Contains('.'))
{
MessageBox.Show("Please Enter A Valid Email", "Invalid Email", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
Run Code Online (Sandbox Code Playgroud)
但这仅测试它是否具有“@”和“.”。在里面。
有没有办法让它检查它是否有 .com 等,并且只有一个“@”?
.NET 4.6.1中的EmailAddressAttribute允许在末尾加点。这意味着以下电子邮件地址:someone@google.com。已验证。对于Microsoft,此电子邮件有效。但是,例如,对于PayPal,电子邮件无效。
那么有人知道吗,电子邮件末尾的点是否有效?
有没有办法在wpf C#中为电子邮件地址进行文本框输入验证?正则表达式或验证表达式或任何可以提供帮助的内容,最好使用代码示例和一些说明
我想澄清一件事.根据客户端请求,我们必须创建一个正则表达式,以便它允许在电子邮件地址中使用撇号.
我的问题根据RFC标准,电子邮件地址是否包含aportrophe?如果是这样,如何重新创建正则表达式以允许撇号?
c# ×8
email ×4
.net ×3
asp.net ×2
textbox ×2
validation ×2
wpf ×2
asp.net-core ×1
cocoa ×1
max ×1
objective-c ×1
regex ×1
winforms ×1