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

C#中DateTime如何转换为DateTimeOffset

C#中DateTime如何转换为DateTimeOffset

C#
慕尼黑8549860 2018-07-26 09:10:54
请问在 C# 中如何将 DateTime 转换为 DateTimeOffset ?
查看完整描述

2 回答

?
DIEA

TA贡献1820条经验 获得超2个赞

DateTime可以直接赋值给DateTimeOffset:

DateTimeOffset dtOffset = DateTime.Now;

但是下面的代码:

DateTimeOffset dtOffset = default(DateTime);

会报错:

The UTC time represented when the offset is applied must be between year 0 and 10,000

正确的解决方法(来源)是:

public static class DateTimeExtensions
{    public static DateTimeOffset ToDateTimeOffset(this DateTime dateTime)
    {        return dateTime.ToUniversalTime() <= DateTimeOffset.MinValue.UtcDateTime                   ? DateTimeOffset.MinValue 
                   : new DateTimeOffset(dateTime);
    }
}


查看完整回答
反对 回复 2018-07-30
  • 2 回答
  • 0 关注
  • 3505 浏览

添加回答

举报

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