用户个人资料页面似乎不允许用户指定他们的时区。我们应该如何添加此功能,以便用户可以选择并保存他们的时区,然后让网页显示本地化日期?
根据服务器的位置在我的浏览器中显示时间,所以我在当地时间早上7点编辑记录,看起来好像我将来4小时编辑它:)
对我来说,最佳解决方案是允许用户在其个人资料中指定他们的时区,然后将此设置反映在用户界面中显示的时间内。
答案 0 :(得分:1)
您需要将Clock.Provider设置为服务器上的UTC时钟。文档告诉您需要设置它,但并不能真正告诉您在哪里。您只需要在启动过程中设置它。这是一个简短的文档链接。
希望有所帮助。
答案 1 :(得分:0)
我在... Web.Host的Startup.cs文件中将Clock.Provider设置为UTC,
// using Abp.Timing;
public Startup(IHostingEnvironment env)
{
// Set Clock.Provider as UTC:
Clock.Provider = ClockProviders.Utc;
//_appConfiguration = env.GetAppConfiguration();
}
如果Angular未发送日期UTC,则可以使用:
yourDate = abp.timing.convertToUserTimezone(yourDate); // to convert yourDate to date UTC.