C#中DateTime如何转换为DateTimeOffset

请问在 C# 中如何将 DateTime 转换为 DateTimeOffset ?

慕尼黑8549860
浏览 3506回答 2
2回答

DIEA

DateTime可以直接赋值给DateTimeOffset:DateTimeOffset&nbsp;dtOffset&nbsp;=&nbsp;DateTime.Now;但是下面的代码:DateTimeOffset&nbsp;dtOffset&nbsp;=&nbsp;default(DateTime);会报错:The&nbsp;UTC&nbsp;time&nbsp;represented&nbsp;when&nbsp;the&nbsp;offset&nbsp;is&nbsp;applied&nbsp;must&nbsp;be&nbsp;between&nbsp;year&nbsp;0&nbsp;and&nbsp;10,000正确的解决方法(来源)是:public&nbsp;static&nbsp;class&nbsp;DateTimeExtensions {&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;DateTimeOffset&nbsp;ToDateTimeOffset(this&nbsp;DateTime&nbsp;dateTime) &nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;dateTime.ToUniversalTime()&nbsp;<=&nbsp;DateTimeOffset.MinValue.UtcDateTime&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?&nbsp;DateTimeOffset.MinValue&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;new&nbsp;DateTimeOffset(dateTime); &nbsp;&nbsp;&nbsp;&nbsp;} }
打开App,查看更多内容
随时随地看视频慕课网APP