我有一个将被多个客户使用的网络项目。我想在资源文件中指定字符串,以便页面上的文本可以是动态的,具体取决于为哪个客户端配置了部署。
例如,我想根据部署将 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”或类似的东西。
如何加载特定“模式”的资源?
更新
我遇到的具体问题是,当我指定自定义 UI 文化(Client1 或 en-US-Client1)时,我的项目中的资源文件似乎没有正确编译。例如,我最终得到两个类名称“MySite”。此外,看起来不能在 Web.config ( <globalization uiCulture="en-US-Client1"/>
) 中提供自定义文化;我收到以下错误:
标记包含“uiCulture”属性的无效值。