将数据列表放在 HttpResponseMessages Content .NET 中



我有一个下载文本文件的api。它工作正常并将数据保存在我的文本文件中。结果图像

到目前为止,我所做的如下:

string data= "1";
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
result.Content = new StringContent(data);
result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
result.Content.Headers.ContentDisposition.FileName = "file.txt";
return result;

我想要什么:

我想在我的结果中放一个列表。内容。示例列表数据如下所示:

List<BlobUploadModel> list= new List<BlobUploadModel>();
BlobUploadModel models = new BlobUploadModel();
models.FileName = "1";
list.Add(models);
BlobUploadModel models1 = new BlobUploadModel();
models1.FileName = "2";
list.Add(models1);

在我的文本文件中,它显示:

结果图像想要这样

怎么做?

示例图像中的文本文件不显示列表 - 它只显示一个文本文件,其中包含由换行符分隔的数据。

考虑到这一点,从列表中提取一些换行符分隔数据的一种方法是:

// The filenames from the list
var filenames = list.Select(model => model.FileName);
// Filenames joined together in a newline-separated string
var data = string.Join(Environment.NewLine, filenames);

你的问题有点不清楚,我会回答我认为是什么,如果不是,请在评论中告诉我。

作为List<T>,您拥有的是内存中无法保存在文本文件中的分离数据结构。您可以保存在文件中的是 string .

有很多方法可以做到这一点,但这是您最简单的方法:

var dataAsString = string.Join("n", list.Select(obj => obj.FileName));

您现在可以将dataAsString保存在文件中。

相关内容

最新更新