已在web.config中设置的当前文化

时间:2016-08-28 13:09:20

标签: c# asp.net date culture dayofweek

我在全球化部分的web.config中设置了文化。资源文件正确加载(对于翻译的单词)。但是,当我想显示星期几时,它根据web.config中的文化而不起作用,而是使用服务器文化。

如何根据web.config中设置的文化而不是Web服务器文化来获取星期几?

(同样:我对资源文件没有任何问题。)

web.config中的文化设置:

<system.web>
        <globalization
             fileEncoding="utf-8"
             requestEncoding="utf-8"
             responseEncoding="utf-8"
             uiCulture="ar"
             culture="ar"
          />

显示日期的代码:

var culture = new System.Globalization.CultureInfo( "ar" );
var day = culture.DateTimeFormat.GetDayName( DateTime.Today.DayOfWeek );
dayOfWeekLbl.Text = day;

我在我的C#代码中设置文化并且它有效。但我希望代码能够使用web.config中的文化。

我没有为资源文件编写任何代码,它可以使用web.config中的设置。

1 个答案:

答案 0 :(得分:1)

您的web.config设置是正确的,应该可以使用。您似乎在项目中的其他位置设置了文化。寻找这样的东西:

  • 在代码中设置文化的功能。 InitializeCulture()函数通常用于此目的。

  • 装配属性。示例[assembly: AssemblyCulture("en-US")]

  • 页面指令。示例<%@ Page Culture="en-US" UICulture="en-US" %>

如果您发现其中任何一项,请将其删除,然后重试以查看是否可以解决问题。当然,在InitializeCulture()函数的情况下,可能需要将其用于其他目的,因此您必须修改它而不是删除它。