我的ASP.NET应用程序已本地化(by using resources)到许多文化。我需要的是找到所有这些文化(在运行时),例如填充DropDownList。
我有代码在Windows应用程序中执行此操作 - 通过寻求附属程序集来补充可用文化的集合。
但是网络应用呢?可以找到卫星组件吗?或者这可以通过其他方式完成?
有什么建议吗?
由于
答案 0 :(得分:3)
这样的事情对你有用......
var ass = Assembly.GetExecutingAssembly();
foreach( var c in CultureInfo.GetCultures(
CultureTypes.SpecificCultures |
CultureTypes.NeutralCultures) )
{
try
{
var sat = ass.GetSatelliteAssembly( c );
// Add to dropdown
}
catch( FileNotFoundException )
{
}
}
答案 1 :(得分:0)
我认为你的问题是用文化来填充下拉列表。
为此你需要维护一个数据文件/数据表,其中提到了所有支持的文化,然后你可以用下拉列表绑定它。
请随意询问更多?
答案 2 :(得分:0)
我有想法:遍历应用程序虚拟目录中的所有。 .resx文件,并以这种方式收集不同的文化名称。我还没有尝试过这个,但我认为这应该给我预期的结果。