Tag: 电子邮件

在Outlook,Gmail等中停止自动超链接

我的Web应用程序向用户发送电子邮件。 该电子邮件包含用于进一步用户操作的链接。 我们的安全标准要求电子邮件中的链接无法点击。 但是,电子邮件客户端会识别电子邮件中的https://并自动链接该URL。 关于如何阻止电子邮件客户端自动链接的任何想法。 我想如果我跳过https://,它可能会停止自动链接。 但是,如果我必须保持https://有任何方法可以避免自动链接。 电子邮件中的链接是在c#代码中动态构造的。

内存流不可扩展

我正在尝试阅读电子邮件附件,并且我收到“内存流无法展开”错误。 我研究了一些,大多数解决方案似乎与动态确定缓冲区的大小有关,但我已经这样做了。 我对内存流不太熟悉,所以我想知道为什么这是一个问题。 谢谢。 foreach (MailMessage m in messages) { byte[] myBuffer = null; if (m.Attachments.Count > 0) { //myBuffer = new byte[25 * 1024]; old way myBuffer = new byte[m.Attachments[0].ContentStream.Length]; int read; while ((read = m.Attachments[0].ContentStream.Read(myBuffer, 0, myBuffer.Length)) > 0) { // error occurs on executing next statement m.Attachments[0].ContentStream.Write(myBuffer, 0, read); } … more […]

使用ASP.Net vNext发送邮件

在传统的ASP.Net和.Net中,发送邮件是通过驻留在System.dll System.Net.Mail类完成的。 现在使用KRE,vNext似乎没有将System.Net.Mail作为单独的包。 引用project.json的”net453″框架 “frameworks”: { “aspnet50”: { }, “aspnetcore50”: { }, “net453”: {} // <<< throws compilation errors }, 因为以下错误导致所有地狱崩溃: .NET Framework 4.5.3错误CS0234:名称空间“Microsoft”中不存在类型或命名空间名称“AspNet”(您是否缺少程序集引用?) 它实际上抱怨作为kpm包的一部分的所有vNext依赖项。 那么,有没有人想出一种使用ASP.Net vNext发送邮件的方法呢? 注意 即使System出现在References下,即使Intellisense显示System.Net.Mail可供使用,代码也无法编译。 例如,这样的简单陈述虽然看似有效, using System.Net.Mail; var m = new MailMessage(); 将抛出编译错误,例如: ASP.NET Core 5.0错误CS0234:名称空间“System”中不存在类型或命名空间名称“Net”(您是否缺少程序集引用?) ASP.NET Core 5.0错误CS0246:找不到类型或命名空间名称“MailMessage”(您是否缺少using指令或程序集引用?) 更新 使用最新的Visual Studio 2015 CTP 5,他们似乎修复了智能感知故障。 现在, System.Net不再具有Mail命名空间。 在旁注中,我使用VS 2015预览创建的vNext项目不再有效 – […]

在应用程序中发送大量电子邮件的最佳做法(ASP.NET MVC 2,C#)?

什么是在Web应用程序中实现批量电子邮件发送function的最佳方式? 两个主要案例: 根据他们的活动,为不同的注册用户发送电子邮件消息(只是向用户发送简短的提醒,以获取有关他创建的主题中的新post) “为所有注册用户发送电子邮件”function,系统管理员可以为所有注册用户发送一些消息。 当然,将所有电子邮件添加到收件人并不是我们可以采用的方式,因为每个用户的电子邮件地址都是无法实现的。 正如我对案例nr1所理解的那样,通过创建新邮件并发送它,通过System.Net.Mail创建一些电子邮件消息没有问题……但是案例nr 2怎么样? 我想像这样: foreach(var emailAddress in emailAddresses) { MailMessage mail = new MailMessage(); mail.From = new MailAddress(“jondoe@bla.net”); mail.To.Add(emailAddress); mail.Subject = “test”; mail.Body = “test”; SmtpClient smtp = new SmtpClient(“smtp.gmail.com”, 587); smtp.Send(mail); } 这不是好方法:)所以问题是实现这一目标的最佳方法是什么? 顺便说一句,我们没有必要为电子邮件发送部署一些服务,这应该集成到Web应用程序中。

如何知道我的电子邮件是否使用Asp.net接收和阅读

我需要知道如何查询已发送的电子邮件状态。 在Asp.net中是否有任何特殊类来实现此function? 如果不是,你知道这样做的方法吗?

根据ASP.net中用户的设置发送定期邮件?

在我的网络应用程序中,我想根据自己选择的时间段为用户发送邮件。 例如: 1个HTML邮件每3天到用户01和1个HTML邮件每20天到用户02 我怎么能这样做? 任何资源? 我可以通过我的应用程序从我的Gmail帐户发送邮件到我的表中的任何邮件地址,但我不知道如何在一段时间内自动发送它。(我使用C#和SQL Express) 帮帮我!

如何从POP3邮件中以编程方式(C#)获取附件?

这个任务有没有C#API? 有什么建议?

在asp.net,C#安排电子邮件

我想用asp.net和C#代码安排电子邮件。 什么是计划电子邮件的基本想法或代码?

在ASP.NET中使用HTTP处理程序生成要在电子邮件中显示的图像

我正在生成条形码图像作为来自HTTP处理程序的响应,如下所示: public void ProcessRequest(HttpContext context) { context.Response.Clear(); context.Response.ContentType = “image/Jpeg”; MemoryStream ms = new MemoryStream(); Bitmap objBitmap = GenerateBarcode(context.Request.Params[“Code”]); objBitmap.Save(ms, ImageFormat.Jpeg); context.Response.BinaryWrite(ms.GetBuffer()); } 我去了http://www.MyWebsite.com/MyProject/BarCode.aspx?code=12345678 ,效果很好。 同样地,我在我的网页上粘贴了 ,效果很好。 但是我在HTML电子邮件中粘贴了相同的图像标记并且没有显示(至少在MS Outlook 2007中没有显示;我还没有测试过其他电子邮件客户端。) 我猜这在某种程度上与我正在使用HTTP处理程序有关,因为电子邮件中的其他静态图像显示正常。 如何修复此图像以便显示图像? (我不能只使用静态图像,因为代码是在发送电子邮件时确定的。) 更新: 事实certificate我没有注意到关键的细节。 图像不仅没有出现; 相反,图像src属性被替换为“ http://portal.mxlogic.com/images/transparent.gif ”。 我已经确定使用.aspx或.ashx扩展名触发了这个替换(或者除了那些预期用于.gif或.jpg等图像的扩展名),并且包含URL中的查询字符串也触发了这个,即使它是标准图像扩展。 我想这是一些过于热心的安全function。 所以包括像BarCode.aspx?code = 12345678这样的图像是行不通的。 我发现我可以执行类似 ,然后为名为BarCode.jpg的所有文件创建处理程序。 这里12345678 /不是一个实际的路径,但是因为我将请求重定向到处理程序,所以我可以从URL中的伪造路径中删除代码值。 但是,我可能不得不改变一些IIS设置来处理ASP.NET处理的.jpg文件的请求,并且我还想确保除了我的BarCode.jpg之外的其他 JPEG正常加载。 老实说,我不确定这是否值得麻烦。

System.Net.Mail.SMTPClient如何执行其本地IP绑定

我们有一个负载均衡(NLB)ASP.NET Web应用程序,它发送电子邮件。 服务器是双归属的,具有面向外部和内部(在防火墙后面)面向IP。 邮件服务器位于防火墙后面。 我们一直在遇到一个问题,即SMTPClient类抛出exception,指出它无法连接到SMTP服务器。 网络人员告诉我们他们正在尝试从面向外部的IP地址(防火墙阻止)连接到SMTP服务器 从我对网络启用的应用程序的知识(不可否认的)我认为本地IP绑定将根据目的地决定,即如果路由表说IP地址可以通过特定的NIC访问,那么IP就是出站请求是从…生成的。 我错了吗? 看着SmtpClient.ServicePoint我开始认为我们可能并且我们可以(应该)强制显式绑定到特定的IP? 特别是我一直在看 该页面的ServicePoint.BindIPEndPointDelegate属性 …… 备注:某些负载平衡技术要求客户端使用特定的本地IP地址和端口号,而不是IPAddress.Any(或Internet协议版本6的IPAddress.IPv6Any)和临时端口。 您的BindIPEndPointDelegate可以满足此要求。 对我来说这似乎有点奇怪,我需要这样做,但也许在这种环境中常见?