Что здесь происходит, так это то, что я могу создавать циклы и получать файлы. Проблема заключается в том, что у меня есть 2 файла, которые я создал из asp.net/jquery множественного управления загрузкой, он захватывает первое вложение 3 раза, а затем второе вложение не доступно для просмотра. Таким образом, файлы создаются дважды в области вложения в Outlook. Вот мой код:
HttpFileCollection fileCollection = Request.Files;
for (int i = 0; i < fileCollection.Count; i++)
{
HttpPostedFile uploadfile = fileCollection[i];
string strFileName = Path.GetFileName(uploadfile.FileName);
Attachment attachFile = new Attachment(multipleFile.PostedFile.InputStream, strFileName);
mailmessage.Attachments.Add(attachFile);
//uploadfile.SaveAs(Server.MapPath("~/Photos/") + strFileName);
mailmessage.Attachments.Add(attachFile);
lblMessage.Text += strFileName + " " + "Saved Successfully<br>";
}
Я не понимаю, что происходит с моей For Loop, но для меня похоже, что она должна работать.
используйте поток на объекте uploadfile
- и удалите один из вызовов mailmessage.Attachments.Add()
: -
HttpFileCollection fileCollection = Request.Files;
for (int i = 0; i < fileCollection.Count; i++)
{
HttpPostedFile uploadfile = fileCollection[i];
string strFileName = Path.GetFileName(uploadfile.FileName);
Attachment attachFile = new Attachment(uploadfile.InputStream, strFileName);
//uploadfile.SaveAs(Server.MapPath("~/Photos/") + strFileName);
mailmessage.Attachments.Add(attachFile);
lblMessage.Text += strFileName + " " + "Saved Successfully<br>";
}
uploadFile
, а неmultipleFile.PostedFile.InputStream
получить каждый содержимое файла , в свою очередь (я предполагаю , что поток будет содержать все загруженные файлы - не только один вы заинтересованы в) - но Я собираюсь пойти проверить, не вижу ли я себя дураком ...HttpPostedFileBase
в своем контроллере для записи содержимого на диск. Похоже, что они имеютmultipleFile.PostedFile.InputStream
файлов - так что вам нужно выяснить, как разделить этот поток в разделителе для каждого загруженного файла.