Limit of 88 bytes on response.write?

2019-08-31 02:12发布

I am trying to serve a csv file from a wcf service, as a string response.

It looks like this:

HttpContext.Current.Response.AddHeader("Content-disposition", "attachment; filename=ImportErrors.csv");
HttpContext.Current.Response.ContentType = "text/csv";
HttpContext.Current.Response.Write(myCsvContent);

The response StatusCode is set to (int)HttpStatusCode.OK (200)

It works, but I am only getting 88 bytes of my csv and the rest is cut off (not shown).

Any suggestions on where to look? I don't see any custom entries in my web.config that are setting a limit.

1条回答
贪生不怕死
2楼-- · 2019-08-31 02:58

Make sure to call

HttpContext.Current.Response.Flush();
HttpContext.ApplicationInstance.CompleteRequest();

This will close the stream and flush the rest of the content.

EDIT: Check out this link. It would seem that my original information was a bit out of date... I've been in "MVC Land" for so long I've forgotten this pattern!

查看更多
登录 后发表回答