FileHelpers库可以编写包含可为空字段的类,也可以读取它们?我使用的是FileHelpers库的2.0版,它被记录为能够处理.NET2.0可空类型。我正在使用文档中示例中给出的代码:[DelimitedRecord("|")]publicclassOrders{publicintOrderID;公共日期时间?订购日期;[FieldConverter(ConverterKind.Date,"ddMMyyyy")]公共日期时间?必填日期;公共诠释?运送方式;使用FileHelperEngine,我可以成功读入一个没有任何OrderDate、RequiredDate或ShipVia字段值的文件。该文件如下所示:1|||但是,我无法将生成的Orders[]写到文件中-库会抛出带有以下堆栈跟踪的NullReferenceException:FileHelpers.FieldBeeld.CreateFieldString(StringBuildersb,ObjectfieldValue)atFileHelpers.FieldBase.BieldFieldString(ObjectfieldValue)在FileHelpers.ConvertHelpers.CultureConverter.FieldToString(对象来自)在FileHelpers.FieldBase.AssignToString(StringBuildersb,对象字段值)在FileHelpers.FileHelperEngine.RecordInfo.RecordToString(对象记录)1.WriteStream(TextWriter编写器,IEnumerable1记录,Int32maxRecords)在FileHelpers.FileHelperEngine1.WriteFile(StringfileName,IEnumerable1records,Int32maxRecords)在FileHelpers.FileHelperEngine1.WriteFile(StringfileName,IEnumerable1records)在TestingFileHelpers.Program.Main(String[]args)在C:devsrcTestingFileHelpersTestingFileHelpersProgram.cs:System.AppDomain中的第19行n.ExecuteAssembly(StringassemblyFile,EvidenceassemblySecurity,String[]args)System.Threading.ExecutionContext.Run(ExecutionContextexecutionContext,ContextCallbackcallback,Objectstate,BooleanignoreSyncCtx)在System.Threading.ThreadHelper.ThreadStart_Context(Objectstate)sAssembly()在System.Threading.ExecutionContext.Run(ExecutionContextexecutionContext,ContextCallbackcallback),objectstate)在System.Threading.ThreadHelper.ThreadStart()我确定我一定在这里遗漏了一些东西,但我不知道它是什么任何帮助是极大的赞赏。您可以尝试最新版本的库:http://teamcity.codebetter.com/viewLog.html?buildId=21768&tab=artifacts&buildTypeId=bt65(以访客身份登录)如果该版本修复了错误,请在评论中告诉我,我将向库中添加一个测试用例以确保其正常工作使用[FieldNullValue("")]属性指定空字段的默认值。以上是C#学习教程:FileHelpers库能否编写包含可为空字段的类并读取它们?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
