带有单引号的MailAddress

时间:2012-07-09 20:53:33

标签: c# email-validation

  

可能重复:
  What characters are allowed in email address?

在C#中,我不知道为什么MailAddress接受单引号的电子邮件地址,例如'a''a'@gmail.com ...我也在Hotmail和Gmail网站上对其进行了测试,他们会允许我向这个错误的电子邮件地址发送电子邮件,但当然,以后会收到电子邮件失败的信息......即使在签名期间up,它不允许使用单引号'的新电子邮件...您是否知道有单引号的有效电子邮件地址?是格式有效吗?

抱歉,我的意思是单引号

2 个答案:

答案 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。