【发布时间】:2021-10-16 02:15:31
【问题描述】:
我有一个名为 csv 的字符串,字面意思就是这样,例如“姓名、姓氏、年龄、身高等” 然后我像这样将它发送到后端..
var csv = exportRequests.GetCSV();
var filename = string.Format("{0}-{1}-{2:yyyy-MM-dd_hh-mm-ss-tt}.csv", "Request", requestStatus.ToUpperInvariant(), DateTime.Now);
var stream = new MemoryStream();
StreamWriter writer = new StreamWriter(stream);
writer.Write(csv);
writer.Flush();
var result = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new ByteArrayContent(stream.GetBuffer())
};
result.Content.Headers.ContentDisposition =
new ContentDispositionHeaderValue("attachment")
{
FileName = filename
};
result.Content.Headers.ContentType =
new MediaTypeHeaderValue("text/csv");
//var test = new FileDetailViewModel();
//test.Name = filename;
//test.Rows = csv;
return Ok(result);
然后我在后端读取它,但实际内容在哪里?当然,字节应该在某个地方。 content 属性只有标题。这发生在使用 $.ajax 进行调用的旧系统上。
谢谢
【问题讨论】:
-
请编辑您的问题并添加您的代码段(不是代码段的屏幕截图)。
-
js上的结果需要是截图才能看到结果,但是我上面c#已经粘贴了。
-
您是使用 Postman 之类的工具检查您的 API 还是只是从 url 请求数据?在那里你可以找到它是否向服务器发送了一些东西。这实际上必须是您的第一步。
标签: javascript c# asp.net-mvc csv export-to-csv