diff --git a/其他專案資料/ASPNET CORE 多语言.docx b/其他專案資料/ASPNET CORE 多语言.docx index f48adc39..32298473 100644 --- a/其他專案資料/ASPNET CORE 多语言.docx +++ b/其他專案資料/ASPNET CORE 多语言.docx @@ -69,4 +69,74 @@ ASPNET CORE 多语言 5. 修改登入页面,增加语言选择 6. 设定Cookies保存登录语言 + +7. 资源文件公用 + a) 在Resources目录下建SharedResource.cs + using Microsoft.Extensions.Localization; + + namespace AMESCoreStudio.Web.Resources + { + public class SharedResource + { + private readonly IStringLocalizer _localizer; + public SharedResource(IStringLocalizer localizer) + { + _localizer = localizer; + } + } + } + b) 修改Startup.cs,注册AddDataAnnotationsLocalization服务 + services.AddMvc() + .AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix) + .AddDataAnnotationsLocalization(options => + { + options.DataAnnotationLocalizerProvider = (type, factory) => factory.Create(typeof(SharedResource)); + }); + c) 新增共用资源文件Resources.SharedResource.zh-TW.resx(名字采用范例中的SharedResource.zh-TW.resx会找不到) + d) 修改控制器文件添加 + using AMESCoreStudio.Web.Resources; + + 修改构造函数 + public SYSController(ILogger logger, ISYS sysApi , IPCS pCS, IStringLocalizer sharedLocalizer) + { + _logger = logger; + _sysApi = sysApi; + _pcsApi = pCS; + _sharedLocalizer = sharedLocalizer; + } + e) 修改视图文件 + @using AMESCoreStudio.Web.Resources; + @inject IHtmlLocalizer sharedLocalizer + + 获取资源 + + + + + + 修改转列表栏位标题来自资源文件 +{ + field: 'systemID', + width: 160, + title: $("#ui_systemid").val(), + sort: true + }, + { + field: 'systemNo', + width: 200, + title: $("#ui_systemno").val() + }, + { + field: 'systemName', + minWidth: 200, + title: $("#ui_systemname").val() + }, + { + field: 'systemDesc', + title: $("#ui_systemdesc").val(), + width: 160 + }, +8. + +