作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
CSVHelper v23 中的重大更改包括“所有委托(delegate)现在都接受单个结构参数”。 PrepareHeaderForMatch 是这些委托(delegate)之一。我收到编译错误“委托(delegate)‘PrepareHeaderForMatch’不接受 2 个参数”。
我对这个基本问题感到抱歉,但我不确定如何修复代码中的PrepareHeaderForMatch。我确信这很简单,但我在网上找不到任何示例或帮助。也许这篇文章将来会对其他人有所帮助。
var csvConfig = new CsvConfiguration(CultureInfo.CurrentCulture)
{
HeaderValidated = null,
MissingFieldFound = null,
PrepareHeaderForMatch = (string header, int index) => header.ToLower() // Match header and property names after converting to lower case
};
最佳答案
我也一直在摸索这个问题。正如您所说,发行说明没有说明如何解决问题,并且文档也没有更新。我终于不得不查看source code来解决它。
这有效:
var csvConfig = new CsvConfiguration(CultureInfo.CurrentCulture)
{
PrepareHeaderForMatch = args => args.Header.ToLowerInvariant()
};
我更喜欢新的参数类,但如果有一个有关重大更改的简单示例就更好了。
关于csvhelper - CSVHelper v23 中的PrepareHeaderForMatch 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66199631/
一直在使用 CsvHelper 6.0.0 版,决定升级到最新版本(当前为 12.3.2)并发现它使用另一个参数,即 csv.Configuration.PrepareHeaderForMatch 的
我是一名优秀的程序员,十分优秀!