【发布时间】:2022-01-19 06:29:31
【问题描述】:
我正在使用CsvHelper 导入csv 文件,为此我使用如下映射类:
private class MyClassMap : ClassMap<MyClass>
{
public MyClassMap ()
{
Map(m => m.Number).Name("Number");
Map(m => m.Name).Name("Name");
}
}
大多数类都包含更多属性。所以我首先要做的是创建一个Attribute 类并将该属性添加到所有公共属性中。所以我可以更改映射代码:
private class MyClassMap : ClassMap<MyClass>
{
public MyClassMap ()
{
var properties = typeof(MyClass).GetProperties();
foreach (var property in properties)
{
var attr = property.GetCustomAttributes(typeof(HeaderAttribute), false).FirstOrDefault();
if (attr != null)
{
//Here what?
}
}
}
}
另外,我将把上面的ctor代码变成一个扩展方法。
在这种情况下我将如何使用Map() 方法?
【问题讨论】:
标签: c# linq reflection csvhelper