.netwcfcsvresponse.writecontenttype

Limit of 88 bytes on response.write?


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.


Solution

  • 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!