我从我的数据库查询并为表中的每一行执行以下功能。我有大约400,000行。DateTimeOffset.Parse的性能下降吗?
当我使用VS内置工具分析性能时,似乎DateTimeOffset.Parse花费了大量时间。具有不同类型的其他属性(例如string,int,bool)所需的数量要少得多。
有没有一种方法来优化DateTimeOffset.Parse的性能?
private MyItem GetMyItemData()
{
var entity = new MyItem();
//**** Lots of setting other entity properties****
entity.ActiveDate =
string.IsNullOrEmpty(this.DataManager.Reader["ActiveDate"].ToString()) ?
DateTimeOffset.MinValue : DateTimeOffset.Parse(this.DataManager.Reader["ActiveDate"].ToString());
return entity;
}
谢谢!
什么格式是'源ActiveDate'场?您正在转换为字符串,然后转换为DateTimeOffset ...是否有更好的转换选项,更直接?例如,如果该字段是'DateTime'(您可以使用'DateTime'进行测试,那么直接将其转换为'DateTimeOffset'比转换为字符串并返回要快得多。 – Corey
感谢Corey,我认为转换选项由同伴提供最好。 – Water