文件是空的,我不明白为什么。 Asp.net mvc FileResult

时间:2010-01-09 03:04:56

标签: c# asp.net-mvc calendar icalendar asp.net-mvc-file-upload

我正在尝试使用内置的asp.net文件结果来返回我试图通过文件流创建的文件。我正在使用Dday.ical制作出口日历

    MemoryStream export = new MemoryStream();         
    iCalendarSerializer serializer = new iCalendarSerializer(iCal);
    serializer.Serialize(export,System.Text.Encoding.Default);
    return export;

这是我的actionResult

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");       
}

当我下载文件时,它是0bytes。

1 个答案:

答案 0 :(得分:3)

尝试重置流的位置:

calendarStream.Position = 0;

那样当FileResult开始从流中读取时,它将从头开始而不是从末尾读取它(之后显然没有更多的字节!)。