Tag: email

无法使用mailto uri创建包含多个收件人的新邮件

我正在使用在WinRT创建Windows 8.1 Store应用程序 。 我无法使用逗号或半冒号分隔每封电子邮件,使用mailto uri创建一个包含多个收件人的新邮件,两者都给出了同样的错误。 Invalid URI: The hostname could not be parsed. mailto字符串看起来像这样 “mailto:username@mail.com,username2@mail.com” “mailto:username@mail.com,username2@mail.com,” “mailto:username@mail.com, username2@mail.com” “mailto:username@mail.com;username2@mail.com” “mailto:username@mail.com;username2@mail.com;” “mailto:username@mail.com; username2@mail.com” 我已经尝试了所有这些变体,所有这些都给了我同样的错误,在新的uri时,就像这样。 var uri = new Uri(string.Format(“mailto:{0}”, mails)); 我不知道我做错了什么,或者如果没有实现,为什么它不会? 我创建了一些unit testing,看看是否有任何变化可行,但没有.. [TestClass] public class UriMailToTest { private Uri CreateMailToUri(string mail) { if (string.IsNullOrEmpty(mail)) throw new ArgumentNullException(“mail”); var uriMailTo = string.Format(“mailto:{0}”, mail); return new […]

使用SmtpClient时“操作超时”

我正在尝试使用C#框架创建一个小应用程序来发送电子邮件。 但是,它不起作用。 该应用程序总是给我“操作超时”。 我不是为什么。 这是我的代码: private void button1_Click(object sender, EventArgs e) { MailAddress fromAddress = new MailAddress(“from@gmail.com”); MailAddress toAddress = new MailAddress(“to@gmail.com”); MailMessage mail = new MailMessage(fromAddress.Address, toAddress.Address); mail.Subject = “Testing”; mail.Body = “contents.”; SmtpClient client = new SmtpClient(); client.Host = “smtp.gmail.com”; client.Port = 587; client.EnableSsl = true; client.Timeout = 100; client.UseDefaultCredentials = false; client.Credentials […]

我可以在System.Net.Mail中关闭电子邮件地址validation吗?

我正在尝试使用电子邮件与传真服务器软件交谈。 传真服务器将接受格式化的SMTP邮件并将其转换为传真,并将它们发送到地址中定义的传真号码。 这是通过从同一服务器从Outlook发送电子邮件手动测试的。 这是我的问题 – System.Net.Mail抛出一个System.FormatException: The specified string is not in the form required for an e-mail address. 由于我尝试发送到的电子邮件地址的格式而导致的exception 有什么方法可以关闭/更改此validation,因为电子邮件地址可能不符合RFC,但如果电子邮件被发送,它将起作用 即我想发送到[RFax:User @ / FN = 0123456789],包括方括号 您可以在Outlook中将其作为电子邮件地址发送 干杯克里斯 编辑 这是我用来绕过validation的类的简化版本。 有两种方法 – 一种是通过覆盖构造函数并直接设置内部属性,另一种是使用内部构造函数。 如果电子邮件地址中有空格,它们的效果会略有不同 using System; using System.Reflection; namespace Mail { public class UnverifiedEmailAddress : System.Net.Mail.MailAddress { /// /// Constructor to bypass the validation […]

如何在Exchange 2010中获取邮件项的项ID

我在c#中使用Exchaneg Web Services来检索Exchange 2010上邮箱的所有电子邮件。 我将每封电子邮件的所有信息都放在一个返回给调用函数的数据表中。 我还需要每封电子邮件的唯一商品ID,以便在完成后我可以将电子邮件标记为“在Exchange上读取”框。 我试过这个: // As a best practice, limit the properties returned to only those that are required. PropertySet propSet = new PropertySet(BasePropertySet.IdOnly, ItemSchema.Subject); // Bind to the existing item by using the ItemId. // This method call results in a GetItem call to EWS. ItemId itemID = Item.Bind(service, itemId, propSet); […]

无法通过Hotmail / live.com / outlook.com发送电子邮件

我已经在stackoverflow上阅读了其他答案。 但这些解决方案都不适合我。 我正在尝试通过live.com发送电子邮件,但无法使用它。 错误消息: mailbox unavailable. The server response was: 5.7.3 requested action aborted; user not authenticated 或错误信息: System.Net.Mail.SmtpException: Service not available, closing transmission channel. The server response was: Cannot connect to SMTP server 65.55.176.126 (65.55.176.126:587), NB connect error 1460 代码: MailMessage mail = new MailMessage(); mail.From = new MailAddress(“email@live.com”); mail.To.Add(“someone@someone.com”); mail.Subject = “hello”; mail.Body […]

从.EML文件中检索电子邮件信息

我有一个.eml文件。 我想要做的是从这个.eml文件中检索From,To,Subject,Body和附件(如果有的话)并保存到数据库。 我需要在C#中执行此操作,并且不需要任何第三方应用程序。 我搜索了一些源代码,但找不到任何,除了这是否可以在.net中读取.eml文件但是没有源代码,这更有帮助。

使用base64字符串的C#LinkedResource

如何将此==> url(‘data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB’)放入new System.Net.Mail.LinkedResource() 使用带有base64字符串的背景css样式,而不是文件url,从C#发送邮件。

“未指定SMTP主机。” – 但是已指定?

我在这里有点困惑 – 我收到以下错误: 未指定SMTP主机。 即使我的代码看起来是正确的(从我可以看到)。 我可以通过包含控制器内部的所有细节来手动完成,例如 SmtpClient smtpClient = new SmtpClient(“smtp.gmail.com”); smtpClient.Port = 587; … etc 但我不应该这样做,因为我想使用mailSettings的细节(让它可以重复用于各种不同的控制器)。 我的Web.Config文件中的mailSettings : 我的控制器动作: [HttpPost] public ActionResult SubmitFeature(FormData formData) { SmtpClient smtpClient = new SmtpClient(); MailMessage mail = new MailMessage(); mail.To.Add(new MailAddress(“example@gmail.com”)); mail.Body = “Test”; smtpClient.Send(mail); return View(“Example”); } 有什么我想念的可能导致这种情况吗? 我没有搞乱Web.Config中的任何其他设置,它们就像设置新的MVC5项目时一样。

发送“代表”电子邮件

我已经“代表”收到了很多电子邮件。 例如,AddThis插件从“addThis.com代表myfriend@gmail.com”发送电子邮件。 我如何在C#/ ASP.NET中执行此操作? 此外,如果我们使用gmail作为我们的SMTP,这是否有效,尽管我们的公司域名? 我也想知道是否有任何关于这种不专业或在客户端PC上被标记为垃圾邮件的担忧? 换句话说,你们真的实现了这个……

Asp.net中的电子邮件传递消息(如何检查电子邮件是否已发送?)

protected void btnSend_Click(object sender, EventArgs e) { string mFrom = “xxx.com”; string mTo = “yyy.com”; string msub=”TESTSUBJECT”; string mMsg=”TEST msg”; string mCc = “Test cc”; // User credential used for sending mail string EmailSender = “xxx.com”; string EmailSenderPasswd = “zzz”; System.Net.NetworkCredential myCachet = new System.Net.NetworkCredential(EmailSender, EmailSenderPasswd); SmtpClient smtp = new SmtpClient(“smtpout.secureserver.net”, 12234); smtp.Credentials = myCachet; […]