为了账号安全,请及时绑定邮箱和手机立即绑定

存储值> 24:00:00的.Net Timespan的正确SQL类型是什么?

存储值> 24:00:00的.Net Timespan的正确SQL类型是什么?

繁花如伊 2019-09-02 15:52:07
我试图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)。


查看完整回答
反对 回复 2019-09-02
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

感谢您的建议。因为SQL服务器中没有等效的。我只是创建了一个第二个字段,它将TimeSpan转换为刻度并将其存储在数据库中。然后我阻止了存储TimeSpan


public Int64 ValidityPeriodTicks { get; set; }


[NotMapped]

public TimeSpan ValidityPeriod

{

    get { return TimeSpan.FromTicks(ValidityPeriodTicks); }

    set { ValidityPeriodTicks = value.Ticks; }

}


查看完整回答
反对 回复 2019-09-02
  • 3 回答
  • 0 关注
  • 948 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信