ATT00006.DAT Файл Автоматически вложенный в почтовом вложении
-
22-09-2019 - |
Вопрос
У меня есть страница, на которой есть управление FileUpload, при представлении формы, когда управление файлом файла файла, файл отправляется через вложение в почту и работает абсолютно, но когда элемент управления FileUpload не имеет файла, файл, файл, файл, файл Att00006.dat Файл автоматически отправляется по электронной почте.
Ссылочный URL: http://nextech.pk/enquiry.aspx?enq=cu
Предварительное спасибо за любую помощь
Редактировать - код:
hpf = fup1.PostedFile;
String toEmail = "test@hotmail.com";
String fromEmail = "mailer@hotmail.com";
MailMessage objMail = new MailMessage(fromEmail, toEmail);
objMail.IsBodyHtml = true;
StringBuilder MailBody = new StringBuilder();
MailBody.Append("<html><head></head><body> <br>");
MailBody.Append("<br>" + "An enquiry is filed <br><br>");
MailBody.Append("<strong><u>Enquirer Information</u></strong>" + "<br><br>");
MailBody.Append("<strong>Contact Name:</strong>	" + txtFirstName.Text + "<br>");
MailBody.Append("<strong>Email:</strong>			 " + txtEmail.Text + "<br>");
MailBody.Append("<strong>Institute:</strong>		 " + txtInstitute.Text + "<br>");
MailBody.Append("<strong>Phone #:</strong>		 " + txtPhone.Text + "<br>");
MailBody.Append("<br><strong>Description:</strong><br>         " + txtEnquiry.Text + "<br>");
if (hpf != null)
{
MailBody.Append("<br>" + "This email also contains an attachment:- <Strong>(" + hpf.FileName + ")</Strong><br>");
}
MailBody.Append("</body></html>");
objMail.Body = MailBody.ToString();
if (hpf != null)
{
System.IO.Stream inputStream = hpf.InputStream;
String fileName = hpf.FileName;
Attachment attach = new Attachment(inputStream, fileName);
objMail.Attachments.Add(attach);
}
SmtpClient SmtpClnt = new SmtpClient();
SmtpClnt.Send(objMail);
Решение
Это ошибочная матч в типе вложения, который система не понимает. Пожалуйста, опубликуйте свой код и то, что вы делаете, когда нет файла в качестве вложения.
Другие советы
Я не знаю, получили ли вы когда -нибудь ответ на это, но я недавно подробно изучил проблему. Проблема возникает потому, что вы не предоставили явное название для вложения. ASP.NET всегда будет прикреплять как .dat, если имя явно не определен.
Проблема в том, что люди предполагают, что ASP.NET будет использовать имя файла в качестве имени вложения, чего не происходит!
В вашем коде вы должны создать экземпляр вложения, а затем явно предоставить имя, используя свойство fileupload.filename:
Dim att As New System.Net.Mail.Attachment(fu.PostedFile.InputStream, System.Net.Mime.MediaTypeNames.Application.Octet) ' use Octet for binary files '
att.Name = fu.FileName ' get the file name and type automatically '
mm.Attachments.Add(att)
Полное объяснение of asp.net прикрепление файлов .dat доступно здесь
Я думаю, что почтовый сервер, который вы используете (или антивирусное программное обеспечение, используемое почтовым сервером), автоматически добавляет этот файл.
Вмещается ли в файле что -нибудь, или он пуст?