我试图TimeSpan在SQL Server 2008 R2中存储.Net 。EF Code First似乎建议它应该存储为Time(7)SQL中的一个。但是TimeSpan.Net可以处理比24小时更长的时间。TimeSpan在SQL服务器中处理存储.Net的最佳方法是什么?
3 回答
慕姐4208626
TA贡献1852条经验 获得超7个赞
我将它作为a存储在数据库中,BIGINT并存储刻度数(例如TimeSpan.Ticks属性)。
这样,如果我想在检索时获取TimeSpan对象,我可以做一些简单的TimeSpan.FromTicks(value)。
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
感谢您的建议。因为SQL服务器中没有等效的。我只是创建了一个第二个字段,它将TimeSpan转换为刻度并将其存储在数据库中。然后我阻止了存储TimeSpan
public Int64 ValidityPeriodTicks { get; set; }
[NotMapped]
public TimeSpan ValidityPeriod
{
get { return TimeSpan.FromTicks(ValidityPeriodTicks); }
set { ValidityPeriodTicks = value.Ticks; }
}
- 3 回答
- 0 关注
- 984 浏览
添加回答
举报
0/150
提交
取消