提问人:MMD 提问时间:8/12/2023 最后编辑:Mohammad AghazadehMMD 更新时间:8/12/2023 访问量:121
如何将列表作为文本文件(ASP.NET Core Web API)发送?
How do I send a list as a text file (ASP.NET Core web API)?
问:
我正在构建一个 ASP.NET 核心 Web API 项目。
我从控制器中的数据库中获取数据:
public IActionResult GetPosts()
{
var data = _context.posts.firstOrDefault(//expression...)
// Converting data to string...
return // data as a text file...
}
现在,我必须将数据转换为字符串并将其作为文本文件发送。
我该怎么做?
谢谢你帮助我
答:
0赞
user16612111
8/12/2023
#1
在这种情况下,它非常简单,检查数据是否为 null,然后获取您需要的所有详细信息并添加到字符串列表中,然后在用连字符连接列表的元素后将列表中的所有元素写入文本文件
var data = _contexts.posts.FirstOrDefault();
//initialize an empty list
var list = new List<string>();
//check if it's null
if(data != null){
//get the post object attributes returned from the database
var id = data.Id.ToString();;
var title = data.Title;
var body = data.Body;
var postedOn = data.PostedOn.ToString();
//add the data the list
list.Add(id);
list.Add(title);
list.Add(body);
list.Add(postedOn);
//join the strings based on the hyphen
var sent = string.Join("-",list);
//write the data to a text file
using(var writer = new StreamWriter("data.txt", false)){
writer.Write(sent);
}
}
评论
0赞
Cleptus
8/12/2023
或者使用 XML 常用格式,如 XML 或 JSON(两者都有 API 或内置函数可以为你执行此操作),或者使用自定义格式,如你的答案。问题在于,由于问题缺乏关键信息(主要是期望的输出),您的答案可能有用,也可能根本没有用。
0赞
8/12/2023
@Cleptus,是的,这取决于我的答案是否有效。只有 OP 可以测试并提供反馈。
0赞
Parham Rajabalian
8/12/2023
#2
我们考虑一个泛型列表,假设它是一个字符串:
TextWriter tw = new StreamWriter("SavedList.txt");
foreach (String s in Lists.verbList)
tw.WriteLine(s);
tw.Close();
另一种方法
using(TextWriter tw = new StreamWriter("SavedList.txt"))
{
foreach (String s in Lists.verbList)
tw.WriteLine(s);
}
评论
.FirstOrDefault()
var data