C# 无法发送带有附件的电子邮件

C# 无法发送带有附件的电子邮件,c#,email,email-attachments,C#,Email,Email Attachments,我的问题是,我正试图利用电子邮件发送任务在我的网站为管理员个人 当他从可用数据中选择电子邮件ID,添加附件并发送电子邮件时,用户从未收到该电子邮件。然而,如果他使用的是简单的邮件,即没有任何附件,用户会收到它 你能帮忙吗 我的编码如下:- public partial class SahibAdmin_emailNewsletter : System.Web.UI.Page { // ... private void SendNewsletter(string emailId)

我的问题是,我正试图利用电子邮件发送任务在我的网站为管理员个人

当他从可用数据中选择电子邮件ID,添加附件并发送电子邮件时,用户从未收到该电子邮件。然而,如果他使用的是简单的邮件,即没有任何附件,用户会收到它

你能帮忙吗

我的编码如下:-

public partial class SahibAdmin_emailNewsletter : System.Web.UI.Page
{
  // ... 

  private void SendNewsletter(string emailId)
  {
        System.Web.Mail.MailMessage message = new System.Web.Mail.MailMessage();
        message.To = emailId;
        message.From = "info@sahibimports.com";
        message.Subject = "Please See: Newsletter from Sahib imports";
        message.BodyFormat = System.Web.Mail.MailFormat.Text;
        message.Body = txtBody.Text.ToString();
        if (msgUpload.HasFile)
        {
              //string strFileName = msgUpload.FileName;
              //msgUpload.PostedFile.SaveAs(Server.MapPath(strFileName));
              //System.Web.Mail.MailAttachment attach =
              //  new System.Web.Mail.MailAttachment(Server.MapPath(strFileName));
              //message.Attachments.Add(attach);

              message.Attachments.Add(new Attachment(
                 FileUpload.PostedFile.InputStream, FileUpload.FileName));

        }
        System.Web.Mail.SmtpMail.Send(message);
        Response.Flush();

  }
根据您的
附件
构造函数正在尝试使用第二个参数设置ContentType,但您正在传入一个文件名,您确定这是正确的吗

您可能应该将该部分更改为:

ContentType contentType = // create suitable type here based on your file format
Attachment attachment = new Attachment(
    FileUpload.PostedFile.InputStream,
    contentType
);
attachment.ContentDisposition.FileName = FileUpload.FileName;
message.Attachments.Add(attachment);

您正在尝试使用System.Net.Mail.Attachment with System.Web.Mail.MailMessage


这些API彼此不兼容。系统。Web.Mail.MailMessage仅支持系统。Web.Mail.MailAttachment,而不支持系统。Net.Mail.Attachment。

可能附件在某个时候被策略阻止了。如果电子邮件反弹,sahiimports.com域是否以任何有意义的方式处理反弹,或者反弹只是掉在地板上?您是否尝试过通过不同的SMTP服务器发送到不同的电子邮件帐户?你查过SMTP日志了吗?是否已检查SMTP服务器上的队列/死信文件夹?运行代码时是否出现异常?