从asp.net Web服务

时间:2017-07-21 17:52:19

标签: c# asp.net httpresponse

我知道有很多关于这个问题的帖子,但是它们中给出的解决方案似乎对我不起作用。

使用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;
     }

0 个答案:

没有答案