在C#中,我不知道为什么MailAddress接受单引号的电子邮件地址,例如'a''a'@gmail.com
...我也在Hotmail和Gmail网站上对其进行了测试,他们会允许我向这个错误的电子邮件地址发送电子邮件,但当然,以后会收到电子邮件失败的信息......即使在签名期间up,它不允许使用单引号'
的新电子邮件...您是否知道有单引号的有效电子邮件地址?是格式有效吗?
答案 0 :(得分:1)
我建议你为什么不在发送电子邮件之前验证你的电子邮件
通过这种方式,您可以立即获得有效电子邮件的反馈
不是最理想的方法,但你使用像这样的MailAddress类
MailAddress mailAddress = null;
try
{
mailAddress = new MailAddress("a'@gmail.com");//email address with single quote in it
}
catch(Exception exception)
{
//If emailAdress is not correct then warn user
}
答案 1 :(得分:0)
根据RFC 2822第3.2.4节,电子邮件地址中允许使用单引号(请参阅如何定义文本):
atext = ALPHA / DIGIT / ; Any character except controls,
"!" / "#" / ; SP, and specials.
"$" / "%" / ; Used for atoms
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
您可能还希望快速检查您的free email validation service的可疑电子邮件地址,这些地址严格遵循上述RFC(以及其他内容),并基于我们的email validation component for Microsoft .NET。