Файл пуст, и я не понимаю, почему. Asp.net mvc FileResult
Я пытаюсь использовать результат встроенного файла asp.net, чтобы вернуть файл, который я пытаюсь создать через поток файлов. Я использую Dday.ical, чтобы сделать мой календарь для экспорта
MemoryStream export = new MemoryStream();
iCalendarSerializer serializer = new iCalendarSerializer(iCal);
serializer.Serialize(export,System.Text.Encoding.Default);
return export;
Вот мой результат действия
public ActionResult ExportCalendar()
{
string userName = User.Identity.Name;
Guid userId = membershipS.GetUsersId(userName);
var calendarStream = calendarS.ExportCalendar(userId);
return File(calendarStream, "text/calendar", "test.ics");
}
Когда я загружаю файл, это 0 байтов.
1 ответ
Решение
Попробуйте сбросить позицию потока:
calendarStream.Position = 0;
Таким образом, когда FileResult
начинает читать из потока, он будет читать его с начала, а не с конца (после которого, очевидно, больше нет байтов!).