如何将客户端时区偏移到剃刀视图中以显示从UTC

时间:2017-12-10 22:07:58

标签: asp.net-mvc razor timezone

我在使用MVC 5的Razor视图中执行以下操作:

foreach(var item in Model)
{
    @{string dt = item.DateExpiring.ToString();} @dt
}

我需要将@dt变量显示为CLIENT的本地日期时间。 我的想法是使用Javascript获取客户端的本地时区偏移(以分钟为单位),并将其传递给item.DateExpiring值,即时转换,以便我可以将上面的内容更改为:

@{string dt = item.DateExpiring.AddMinutes({someJavascriptVariableHere}).ToString();}@dt

两个问题:

  1. 这可能吗?
  2. 怎么做? (意思是,如何解决/将JS转换为我需要的双倍)?
  3. 提前致谢。

1 个答案:

答案 0 :(得分:2)

如果您想在本地显示日期时间,请点击此处 UTC on server - local time on client 在你的情况下:

foreach(var item in Model) {
<script type="text/javascript">
  var strDate = new String('@item.DateExpiring.ToString("MM/dd/yyyy hh:mm:ss tt") UTC');
  var localTime = new Date(strDate);
  document.write(localTime.toLocaleString());
</script>
}