[英]How can I get the client side date and currency formats?
我想以用户选择的格式显示日期和货币金额。
如何从客户端计算机中检索?
另外,还有其他方法可以正确格式化日期/货币吗?
谢谢
浏览器公开其语言环境:您可以使用** Thread.CurrentThread.CurrentUICulture**
检索它。
您可以使用自己选择的文化来覆盖他们的文化(如果可以从菜单中选择其他语言)
格式化日期时间,并在此处读取字符串
请注意,设置区域性会在页面周期中很快发生,如果将其设置为较晚,资源文件将是先前选择的区域性文件。
要在周期的早期设置文化,您可以创建一个基页(继承ViewPage){}
using System.Globalization;
using System.Threading;
using System.Web.Mvc;
namespace NerdDinner.Views
{
public class NerdDinnerViewPage<T> : ViewPage<T> where T : class
{
protected override void InitializeCulture()
{
base.InitializeCulture();
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentCulture.Clone() as CultureInfo;
if (Thread.CurrentThread.CurrentCulture != null)
{
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalSeparator = ".";
Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator = ".";
}
}
}
}
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="NerdDinner.Views.NerdDinnerViewPage<NerdDinner.Models.DinnerFormViewModel>" %>
这里是完整的例子,但我复制了easyness代码: 例如
另一种方法是使用全局asax,可以在此处找到
为了选择在您的处置为.NET工具有用的默认值(如CultureInfo的),我的建议(以网络情况)将解析HTTP用户代理字符串,如提供的例子在这里 。 但是此外,用户应该能够覆盖默认值,并且您应该将用户的选择保存在cookie中,如果适用,还可以保存用户选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.