我有一个将由多个客户使用的Web项目 . 我想在资源文件中指定字符串,以便页面上的文本可以是动态的,具体取决于部署配置的客户端 .
例如,我想将Web.config中的 globalization
元素的 uiCulture
属性设置为"Client1"或"Client2",具体取决于部署 .
然后,我会有这些资源文件:
-
App_GlobalResources \ MySite.Client1.resx
-
App_GlobalResources \ MySite.Client2.resx
-
App_LocalResources \ Default.aspx.Client1.resx
-
App_LocalResources \ Default.aspx.Client2.resx
等等,但似乎 uiCulture
必须是一个真实/真实的文化 . 我不想伪造它并假装"Client1"是"en-US"和"Client2"是"es-MX"或类似的东西 .
如何为特定“模式”加载资源?
Update 具体问题我似乎是正确编译的 . 例如 . 我最终得到了两个名为"MySite"的 class . 此外,它看起来不像Web.config中提供的自定义文化( <globalization uiCulture="en-US-Client1"/>
);我收到以下错误:
标记包含“uiCulture”属性的无效值 .
1 回答
我有完全相同的问题 . 当我注册自定义文化时,我无法在web.config中设置新文化 . 在代码中切换它也无法正常工作 - 应用程序正在使用默认文化 . 当我清理解决方案并手动删除bin和obj文件夹时,这已得到解决 .
BTW . 请仔细检查您是否真正安装了新的文化,即在IE浏览器中:工具 - > Internet选项 - >语言