我知道有很多关于这个问题的帖子,但是它们中给出的解决方案似乎对我不起作用。
使用Postman测试我的Web服务,我得到一个另存为对话框提示,但默认名称为" response.txt"。我希望它是" export.csv"。根据我的研究,以下代码应该可以实现,但我仍然得到" response.txt"的默认文件名。
我可以手动将文件名更改为export.csv,但效果很好,但如果没有必要,我也不想要求用户这样做。
public HttpResponseMessage ExportService()
{
HttpResponseMessage msg = new HttpResponseMessage();
var fileName = files[0].FileName;
var content = new ByteArrayContent(files[0].FileContent);
msg.Content = content;
msg.Content.Headers.ContentType = new MediaTypeHeaderValue("text/csv");
msg.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "export.csv"
};
msg.StatusCode = HttpStatusCode.OK;
return msg;
}