具有不同 DLL 的 MVC 全球化
MVC globalization with different DLLs
我按以下方式设计了我的 MVC 应用程序:
-Portal.UI ( hold all the Views and controllers details)
- App_GlobalResources
- Global.en-GB.resx
- Global.ar-SA.resx
-Portal.Models ( hold all classes and Entity framework DbContext code first)
- Resources
- Global.en-GB.resx
- Global.ar-SA.resx
-Portal.Services ( used for accessing different internal web services)
客户要求将应用程序制作成多语言以支持不同的语言
所以我已将资源文件添加到 Portal.UI
并将视图标题和按钮转换为使用这些资源文件
此外,我将资源文件添加到 Portal.Models
项目,并为每个使用的 属性
使用 [Display(Name="Name",typeof(Resources.Global)]
现在我怎么知道 Project.Models
使用哪个资源文件?
我的意思是如果我将区域性更改为 ar-SA 例如在 Portal.UI
中,它也会自动反映到 Portal.Models
或者我必须编写代码来实现这个?
任何建议将不胜感激
根据 UICulture(而非文化)选择的资源文件。假设 Portal.Models 项目是您部署的一部分,并作为参考添加到您的 Portal.UI,您唯一应该做的就是在 Portal.UI.[=11 中设置正确的 UICulture =]
Useful link that shows the difference between Culture and UICulture
我按以下方式设计了我的 MVC 应用程序:
-Portal.UI ( hold all the Views and controllers details)
- App_GlobalResources
- Global.en-GB.resx
- Global.ar-SA.resx
-Portal.Models ( hold all classes and Entity framework DbContext code first)
- Resources
- Global.en-GB.resx
- Global.ar-SA.resx
-Portal.Services ( used for accessing different internal web services)
客户要求将应用程序制作成多语言以支持不同的语言
所以我已将资源文件添加到 Portal.UI
并将视图标题和按钮转换为使用这些资源文件
此外,我将资源文件添加到 Portal.Models
项目,并为每个使用的 属性
[Display(Name="Name",typeof(Resources.Global)]
现在我怎么知道 Project.Models
使用哪个资源文件?
我的意思是如果我将区域性更改为 ar-SA 例如在 Portal.UI
中,它也会自动反映到 Portal.Models
或者我必须编写代码来实现这个?
任何建议将不胜感激
根据 UICulture(而非文化)选择的资源文件。假设 Portal.Models 项目是您部署的一部分,并作为参考添加到您的 Portal.UI,您唯一应该做的就是在 Portal.UI.[=11 中设置正确的 UICulture =]
Useful link that shows the difference between Culture and UICulture