我正在尝试通过对数据库的查询来创建dbf表,该表是用C#编写的程序制成的。
我遵循了以下主题: Create .DBF file from SQL table records
为此,该项目包含了另一个项目,称为Dbflibrary。在简化为我的问题的示例中,我执行以下操作:
static void Main(string[] args)
{
var fhaltaColumn = DbfFieldDescriptors.GetDateTimeField("fhalta");
var columns = new List<DbfFieldDescriptor>() {fhaltaColumn};
Func<MyClass,object> mapfhalta = myClass => myClass.fhalta;
var mapping = new List<Func<MyClass,object>>() { mapfhalta };
List<MyClass> values = new List<MyClass>();
values.Add(new MyClass()
{
fhalta = DateTime.Now
});
string fileName = "C:\\temp\\Archivo.dbf";
DbfFileFormat.Write(@fileName,values,mapping,columns,Encoding.Default);
}
public class MyClass
{
public DateTime fhalta { get; set; }
}
结果是一个dbf文件,其中包含一个名为fhalta的字段,但值是“ / / :: AM”,而不是DateTime。现在需要。
如何正确传递日期时间值? 我在做什么错了?