gpt4 book ai didi

c# - 使用 CsvHelper 仅将选定的列写入 CSV 文件

转载 作者:行者123 更新时间:2023-12-05 03:12:59 24 4
gpt4 key购买 nike

我有一个从网络服务获取数据的小程序。该程序获取 JSON 响应,将其映射到 POCO,并将对象写入 CSV 文件(自动映射)。当我请求数据集中的“所有”数据时,它工作得很好,但是,如果我像这样查询资源(通过 OData):“$select EmpNo、FirstName、LastName”,CSV 编写器仍将写入所有列到 CSV 标题,例如“EmpNo、FirstName、LastName、Street、Address、City、Age”等,只需将 0(如果是整数)、false(如果是 bool 值)或“”(如果是字符串)插入到没有数据的列。

Web 服务仅正确返回指定的列,所以这不是问题所在。我使用 CsvHelper 进行对象映射和 CSV 写入。 (但我愿意使用任何可以解决我问题的方法)

如果这是我在 OData 查询中要求的,我只想将“EmpNo、FirstName、LastName”和列的数据写入 CSV 文件。

有什么解决这个问题的好主意吗?

最佳答案

在不知道您使用的确切代码的情况下很难判断。但我的猜测是,当您编写对象列表时,您正在使用其中包含额外字段的模型,这些字段都是空的,因为您没有通过 odata 请求它们。

如果您只需要带有 CsvHelper 的子集,您可能需要指定 CsvClassMap<T>这会将您现有的模型映射到您想要的字段中

这里有很多关于 CsvClassMap 的例子:http://joshclose.github.io/CsvHelper/

write 方法可能有一个方法重载,该方法将采用类映射。

关于c# - 使用 CsvHelper 仅将选定的列写入 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31748272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com