标签: globalization

ASP.NET开发服务器忽略浏览器文化

我正在尝试实现ASP.NET更改文化的简单示例.我正在运行Windows 7,IE 8和VS 2008.我的标签看起来像这样:

<asp:Label ID="TextBox1" runat="server" meta:resourcekey="Greeting"></asp:Label>
Run Code Online (Sandbox Code Playgroud)

我在App_LocalResources中有两个文件:Default.aspx.resx和Default.aspx.fr.resx.

在它们中,我有一个名为"Greeting.Text"的字符串值,值设置为"Hello!" 在一页,和"卓悦!" 在另一个.

我的浏览器设置为首选fr-FR作为默认语言.当我使用ASP.NET Development Server通过F5或Shift-F5打开页面时,无论我在浏览器的"语言"对话框中设置了什么,该页面显然都将我的文化识别为en-US.

话虽这么说,浏览器配置正确,因为谷歌用法语显示.

当我向页面添加标签并将标签的Text设置为CurrentCulture或CurrentUICulture的名称时,我得到了en-US,这显然不是我输入的内容.

有没有人知道为什么这不能正常工作?

asp.net globalization

1
推荐指数
1
解决办法
1681
查看次数

货币格式

我有一些字符串格式的问题,我在格式化特定格式时强迫文化:

get { return String.Format("{0:###,###,###,###,##0}", Convert.ToDecimal(_monthPay, new System.Globalization.CultureInfo("es-ES"))); }
Run Code Online (Sandbox Code Playgroud)

所以我可以得到这个:

$ 300.000,01

在localhost它工作正常,但当我发布到服务器,我得到这个:

$ 300,000.01

我不知道为什么!!! 我无法访问服务器,因此无法更改服务器上的区域设置; 还有另一种解决方法吗?以便我在localhost和发布时正常工作?

谢谢.

.net c# globalization

1
推荐指数
1
解决办法
853
查看次数

如何处理ASP.Net(MVC)的时差?

我已经向美国的服务器发布了一个Web应用程序.该应用程序实际上是瑞典人(瑞典人),我正在寻找最好的方法来弥补时差.

有一个+7小时的差异.

我应该DateTime.Now按原样存储数据库,还是应该在创建每条记录之前使用DateDiff来更改时间?

这里的最佳做法是什么?什么存储在数据库中?提交时日期是否应该不同?

请最好的做法!

asp.net globalization asp.net-mvc datetime

1
推荐指数
1
解决办法
511
查看次数

使用客户端文化代码隐藏的ASP日期格式

我在SQLServer数据库中有一个ASP.NET Web应用程序和数据.

从代码隐藏中以客户端的文化格式显示日期(使用LINQ提取)的最佳方法是什么.

我的意思是我有来自美国和欧洲的用户,他们想要不同的格式:( MM/dd/yyyy美国)或dd/MM/yyyy (UK)

我想要的是:

from myData in dbContext.myFile 
         Where .../... 
   Select myFile.birthDate.ToString.(**some magic formating here**)
Run Code Online (Sandbox Code Playgroud)

更新:感谢Darin快速回答!

提示:如果使用IE,请不要忘记检查所使用的首选语言:查看工具/ Internet选项/语言

linq asp.net format globalization date

1
推荐指数
1
解决办法
1351
查看次数

Application_AcquireRequestState()多次触发

我在mvc3应用程序中使用以下方法:

protected void Application_AcquireRequestState(object sender, EventArgs e)
        {
          if (HttpContext.Current.Session != null)
            {
                CultureInfo ci = (CultureInfo)this.Session["Culture"];

                if (ci == null)
                {
                    string langName = "az";
                    ci = new CultureInfo(langName);
                    this.Session["Culture"] = ci;
                }

                Thread.CurrentThread.CurrentUICulture = ci;
                Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(ci.Name);
            }
        }
Run Code Online (Sandbox Code Playgroud)

为什么这种方法被多次调用?

当站点在其他PC的新浏览器中打开时,找不到站点资源.

globalization session cultureinfo httpcontext asp.net-mvc-3

1
推荐指数
1
解决办法
5258
查看次数

德国系统上的Double.Parse导致逗号而不是小数点

我有以下内容:

 private static string someValue = "0.1";
Run Code Online (Sandbox Code Playgroud)

我需要将其转换为double才能进行一些计算.在德国系统上,我将转换为0,1而不是0.1,我需要它为0.1.我尝试了以下方法:

double d = Convert.ToDouble(s_valueDeadband10Percent, CultureInfo.InvariantCulture.NumberFormat); // still getting 0,1
Run Code Online (Sandbox Code Playgroud)

double d = Convert.ToDouble(s_valueDeadband10Percent, CultureInfo.InvariantCulture); // still getting 0,1
Run Code Online (Sandbox Code Playgroud)

有任何想法吗 ?

c# globalization

1
推荐指数
1
解决办法
1010
查看次数

更改.net asp mvc 4文化信息,适用范围广

我有一个完整的应用程序,它使用Web应用程序,数据库和一些业务逻辑层.问题是它们中的每一个都配置为使用系统文化.我需要将文化固定为所有文化中的不变量或标准文化.我已经尝试在web.config中添加全球化标签,但我仍然遇到问题,它似乎无法正常工作.

我还在我的布局页面中添加了"globalize.js"脚本,因此脚本可以像系统的其余部分一样工作,但它也不起作用.

globalization asp.net-mvc cultureinfo

1
推荐指数
1
解决办法
4961
查看次数

有些疑问与C#CultureInfo和与SQL Server的关系有关

我是C#的新手,我对如何使用System.Globalization.CultureInfo类有以下疑问.

我有以下情况.

在类中,我读取了一些值(来自使用XPath的XML),其中包含一些信息作为某些数据字段.

所以我有类似的东西:

System.Globalization.CultureInfo cultureEN = new System.Globalization.CultureInfo("en-GB");

currentDeepSightVuln.LastUpdated = DateTime.Parse(n_alertdocument.SelectSingleNode("./x:LastUpdated", nsmgr).InnerText, cultureEN);
Run Code Online (Sandbox Code Playgroud)

在我的XML文件中,此字段为:

<x:LastUpdated>2014-05-21T17:00:38</x:LastUpdated>
Run Code Online (Sandbox Code Playgroud)

所以它的价值是2014-05-21T17:00:38

在执行上一个操作(初始化LastUpdate对象属性)时运行我的程序我有**LastUpdate属性值是:{21/05/2014 17:00:38}.

如您所见,它有另一种格式而不是XML字段值.我认为这很正常,因为它是基于en-GB设置进行转换的.

我的疑问是:如果那时我将我的对象保存在数据库表(Microsoft SQL Server)上,我可以遇到一些问题,还是从SQL Server中以纠正的形式重新转换?

编辑1: 要将我的对象插入db,我使用类似的东西:

public long insert(DataModel.Vulnerability.Vuln v){

        _strSQL = "";
        string strSQLParametri = "";
        string query = "";

        long newId;
        long VulnerabilityAlertDocumentPkValue;

        System.Data.Common.DbCommand command;
        command = _connection.CreateCommand();
        try
        {
            _transactionBegin();
            // [VulnerabilityAlertId] insertion on the DB:
            if (v.VulnerabilityAlertId != null)
            {
                _strSQL = "INSERT INTO VulnerabilityAlertDocument …
Run Code Online (Sandbox Code Playgroud)

c# sql sql-server globalization cultureinfo

1
推荐指数
1
解决办法
800
查看次数

如何使字符串比较在进程/线程级别上不区分大小写?

我正在阅读C#中的字符串比较,我想知道:

我可以预定义进程/线程级别的比较信息不区分大小写,所以我可以==在比较两个字符串时直接使用吗?

.net c# string globalization cultureinfo

1
推荐指数
1
解决办法
110
查看次数

.NET CultureInfo本地化DisplayName

如果我写这段代码:

var displayName = new CultureInfo("ja-JP").DisplayName;
Run Code Online (Sandbox Code Playgroud)

价值displayName是:

"Japanese (Japan)"
Run Code Online (Sandbox Code Playgroud)

CultureInfo实例上是否有方法或属性可以为我提供本地化的显示名称?例如,而不是:

"Japanese (Japan)"
Run Code Online (Sandbox Code Playgroud)

我想得到:

???????
Run Code Online (Sandbox Code Playgroud)

.net c# globalization localization

1
推荐指数
1
解决办法
552
查看次数