代码之家  ›  专栏  ›  技术社区  ›  eandersson

如何使用AutoMapper将MySQL时间戳保存为字符串而不是DateTime?

  •  4
  • eandersson  · 技术社区  · 15 年前

    我正在使用AutoMapper将MySQL结果保存在一个列表中,这是关于最后一次更新行的完整信息。然后将使用“时间戳”查询数据库以获取更新。但是,恐怕使用C#DateTime类型会根据用户的位置修改时区。因为我在开发周期的早期就遇到了这个问题。

    所以,基本上我的问题是如何确保使用AutoMapper保存的“timestamp”没有被修改,并且可以再次用于查询数据库?

    编辑:这是用于转换结果的代码。

    public class Entry
    {
        public UInt32 id { get; set; }
        public string ... { get; set; }
        public UInt16 ... { get; set; }
        public string ... { get; set; }
        public string lastupdated { get; set; } // Using DateTime works, also tried value.ToString()
        public string ... { get; set; }
        public UInt16 ... { get; set; }
    }
    
    List<Entry> users = AutoMapper.Mapper.Map<MySqlDataReader,List<Entry>>(dbReader);
    
    1 回复  |  直到 15 年前
        1
  •  1
  •   Pieter van Ginkel    15 年前

    可以使用自定义格式化程序实现此功能。

    有关如何实现这种格式化程序的详细信息,请参阅CodeProject上的本文: http://www.codeproject.com/KB/codegen/automapperformatters.aspx .