给出电子邮件地址:"Jim"<jim@example.com>
如果我尝试将此传递给MailAddress,我会得到异常:
指定的字符串不是电子邮件地址所需的格式.
如何在C#中将此地址解析为显示名称(Jim)和电子邮件地址(jim@example.com)?
编辑:我正在寻找解析它的C#代码.
EDIT2:我发现MailAddress抛出了异常,因为我在电子邮件地址字符串的开头有一个空格.
我的工作地点正在考虑购买第三方工具,用于基于批量的美国和加拿大地址修正,以及地理编码.
请注意,我们是一个C/C++ Unix商店.
像一个优秀的 C# 用户一样,我使用该MailAddress
对象来验证电子邮件地址。
我的一个客户输入john@gmail.
了他的电子邮件,经过验证MailAddress
,并破坏了我的软件。我希望下面的代码抛出异常,但事实并非如此。
static void Main(string[] args)
{
string addressmail = string.Empty;
try
{
MailAddress mail = new MailAddress(@"john@gmail.");
addressmail = mail.Address;
}
catch (FormatException)
{
// address is invalid
}
// address is valid
Console.WriteLine(addressmail);
}
Run Code Online (Sandbox Code Playgroud)
你知道如何捕捉这种虚假的邮件地址吗?
我正在使用MailAddress创建传真电子邮件.我们正在使用名为SatisFAXtion v 8.6的系统.要提供传真封面,我可以将模板位置添加到mail.TO地址.
格式如下:
12125551234^template=cp\\FAXReportCover.rtf@fax.ourcompanymail.com
Run Code Online (Sandbox Code Playgroud)
编译时它工作正常,但我需要两个反斜杠,所以我添加了两个作为转义字符.
当我运行程序时,我得到一个例外:
Message: An invalid character was found in the mail header:
StackTrace: at System.Net.Mail.MailAddressParser.ParseLocalPart(String data, Int32& index, Boolean expectAngleBracket, Boolean expectMultipleAddresses)
at System.Net.Mail.MailAddressParser.ParseAddress(String data, Boolean expectMultipleAddresses, Int32& index)
at System.Net.Mail.MailAddressParser.ParseMultipleAddresses(String data)
at System.Net.Mail.MailAddressCollection.ParseValue(String addresses)
at System.Net.Mail.MailAddressCollection.Add(String addresses)
at System.Net.Mail.Message..ctor(String from, String to)
at System.Net.Mail.MailMessage..ctor(String from, String to)
Run Code Online (Sandbox Code Playgroud)
有没有办法在MailAddress对象的电子邮件地址中插入反斜杠?
正如本问题所述,System.Uri
反映我对URI的意图是一个很好的选择.但是对于电子邮件地址呢?
它似乎并不那么明确,因为MailAddress
它的DisplayName
财产中有额外的信息并不适合.
我正在尝试发送电子邮件,而不是向每个人发送5封电子邮件,我想向所有5个人发送一封大量电子邮件.这里的不同之处在于我希望每个人都出现在"TO"或"CC"行中.我怎样才能做到这一点?