c# - 将日期和时间转换为 GMT 格式

标签 c# datetime

我有单独的日历和时间选择器。我想将两者结合起来并转换为 GMT 时间。

var time = timepicker.Time; //This is in 24hour format, but needs to store in AM,PM format
var date = calendar.SelectedDate;
string add_date_time = date+ " " +time;
DateTime gmt = add_date_time.ToUnviersalTime();

我得到的错误是

"cannot convert string to System.DateTime"

编辑:

这是日历和时间选择器的 xml 代码。

 <controls:Calendar  x:Name="calendar"/>
 <TimePicker x:Name="time_picker" Format = "T"/>

转换成gmt后,我想存入DB。

最佳答案

由于 calendar.SelectedDate 是一个 DateTime?timepicker.Time 是一个 TimeSpan,下面的代码应该工作:

DateTime gmt = (calendar.SelectedDate.Value + timepicker.Time).ToUniversalTime();

在运行此代码之前,您可能需要检查 calendar.SelectedDate.HasValue 是否为 true,以防未选择日期。

然后您可以将此 DateTime 值与您的数据库访问代码一起使用。

关于c# - 将日期和时间转换为 GMT 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60502883/

相关文章:

c# - WPF TextBox EventTrigger 事件序列

c# - WebClient 与 HttpClient - 异步请求

c# - 在代码隐藏中将 RotateTransform 动画添加到 Storyboard

python - 如何在求和值时将 DateTime 拆分为 Year 和 Month?

python - 绘制数据框列 - 日期时间

python - 枚举日期范围

python - 我如何将 xaxis_date() 与 barh() 一起使用?

c# - 如何使用 DateTime.Now 函数

c# - SQL Server : conversion failed when converting from a character string to uniqueidentifier

c# - 使用 ASP.net Web 显示数据库中的内容进行循环