ASP.NET Web服务本地化
我想在ASP.NET应用程序中本地化Web服务 我可以编写以下代码来检测首选客户端区域性:ASP.NET Web服务本地化,asp.net,localization,web-services,Asp.net,Localization,Web Services,我想在ASP.NET应用程序中本地化Web服务 我可以编写以下代码来检测首选客户端区域性: CultureInfo culture = null; if (Request.UserLanguages!=null && Request.UserLanguages.Length>0) { string lang = Request.UserLanguages[0]; if (!String.IsNullOrEmpty(lang)) { try { c
CultureInfo culture = null;
if (Request.UserLanguages!=null && Request.UserLanguages.Length>0) {
string lang = Request.UserLanguages[0];
if (!String.IsNullOrEmpty(lang)) {
try {
culture = new CultureInfo(lang) ;
}
catch {}
}
}
并使用此表达式从资源中获取字符串:
WebResources.ResourceManager.GetString(stringName, culture);
但我想使用类似于页面指令属性的东西:
Culture="Auto" UICulture="Auto"
有可能吗?首先,这一切都取决于客户端传输的头文件,UserLanguages集合从中收集信息。您服务的大多数消费者(如果他们不是浏览器)将不会传输该信息 其次,不,我认为不可能自动完成,但是您可以在HttpContext.Items集合中写入一些值,然后结束
public string GetResource(string Key)
{
culture = HttpContext.Items["UserLanguage"];
WebResources.ResourceManager.GetString(stringName, culture);
}
那么您的代码将只显示:-
GetResource("Blah");
谢谢
菲尔