Jag*_*uir 5 c# csv filehelpers
FileHelpers有一个很好的字段日期转换器:
[FieldConverter(ConverterKind.Date, "MM-dd-yyyy")]
public DateTime MyDate;
Run Code Online (Sandbox Code Playgroud)
但FieldConverter不适用于属性.我必须处理使用属性的对象,所以我正在寻找这样的东西:
[PropertyConverter(ConverterKind.Date, "MM-dd-yyyy")]
public DateTime MyDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
如何使用属性执行此操作?
您不能将转换器与属性一起使用。
但是,您可以做的是仅为导入/导出记录创建一个数据模型,该数据模型不绑定到域对象。该数据模型可以具有字段而不是属性。
因此,如果您有 Customers,它是域持久数据对象,您可以创建类似 CustomerRecord 的东西,它将 Customer 作为构造函数参数并复制所有数据(或使用 Automapper 之类的东西轻松为您复制值),那么只需使用文件记录数据模型来执行文件帮助器操作,而不是域模型。
这看起来像是额外的工作,确实如此,但它还将域模型与文件操作解耦,这是一种良好的可维护性设计模式。