从数据库读取ToUniversalTime()的Dispay IST时间



我使用C#语言在数据库MYSQL中转换为ToUniversalTime()来存储用户提交的帖子。

 BLLContext bll=new BLLContext();
 bll.DatePosted = DateTime.Now.ToUniversalTime();
 BLLContextRepo repo=new BLLContextReop();
 repo.SubmitContext(bll);

当我尝试使用ToLocalTime()检索它时,它显示的是服务器的本地时间(在美国)。但我想展示印度标准时间。未显示印度标准时间的实际代码

<asp:Label ID="Label1" runat="server" Text='<%# string.Format("{0: MMM d, yyyy "+"@"+" hh:mm tt}",((DateTime)DataBinder.Eval(Container.DataItem,"DateUpdated")).ToLocalTime()) %>' />

有类似的东西吗

<asp:Label ID="Label1" runat="server" Text='<%# string.Format("{0: MMM d, yyyy "+"@"+" hh:mm tt}",((DateTime)DataBinder.Eval(Container.DataItem,"DateUpdated")).ToLocalTime("Indian Standard Time")) %>' />

我怎样才能做到这一点?

您需要使用相关的TimeZoneInfo转换DateTime。例如:

TimeZoneInfo zone = TimeZoneInfo.FindSystemTimeZoneById("Indian Standard Time");
DateTime indian = TimeZoneInfo.ConvertTimeFromUtc(originalDateTime, zone);

或者,你可能想看看我正在写的API的日期/时间,Noda time,我想通过将"本地"日期/时间(无时区)的想法与你知道的区域和你只知道与UTC的偏移量的想法分开,让这一切变得更清楚。

相关内容

  • 没有找到相关文章

最新更新