【愚公系列】2023年02月 WMS智能仓储系统-002.多语言功能实现

news/2024/11/9 0:10:17/

文章目录

  • 前言
  • 一、多语言功能实现
    • 1.新建多语言资源文件
    • 2.使用步骤
    • 3.控制器中使用


前言

互联网时代的到来,企业的需要与国际接轨。这就面临一个问题不是所有的人都能看懂网上语言,如果你的网站仅仅使用中文,根据用户使用母语的搜索习惯,那些不以中文为母语的客户们,将很难在你的网站上做过多的停留,所以网站做多语言适配的重要性不言而喻。

多语言网站开发重点就是解决语言之间的切换问题。

一、多语言功能实现

1.新建多语言资源文件

创建资源文件MultiLanguage,同样的方式再添加MultiLanguage.en-us、MultiLanguage.zh-cn。
在这里插入图片描述
输入如下就可以配置多语言
在这里插入图片描述

2.使用步骤

#region 添加多语言本地化支持
services.AddLocalization();services.AddSingleton<IStringLocalizer>((sp) =>
{var sharedLocalizer = sp.GetRequiredService<IStringLocalizer<MultiLanguage>>();return sharedLocalizer;
});
#endregion

AddDataAnnotationsLocalization必须在AddControllers之后

services.AddControllers(c =>
{c.Filters.Add(typeof(ViewModelActionFiter));c.MaxModelValidationErrors = 99999;
}).AddDataAnnotationsLocalization(options => {options.DataAnnotationLocalizerProvider = (type, factory) =>factory.Create(typeof(ModernWMS.Core.MultiLanguage));}); ;

在这里插入图片描述

var localization_options = new RequestLocalizationOptions().SetDefaultCulture(support_languages[0]).AddSupportedCultures(support_languages).AddSupportedUICultures(support_languages);
app.UseRequestLocalization(localization_options);

在这里插入图片描述

3.控制器中使用

/// <summary>
/// user controller
/// </summary>
[Route("user")]
[ApiController]
[ApiExplorerSettings(GroupName = "Base")]
public class UserController : BaseController
{#region Args/// <summary>/// user Service/// </summary>private readonly IUserService _userService;/// <summary>/// Localizer Service/// </summary>private readonly IStringLocalizer<ModernWMS.Core.MultiLanguage> _stringLocalizer;#endregion#region constructor/// <summary>/// constructor/// </summary>/// <param name="userService">user Service</param>/// <param name="stringLocalizer">Localizer</param>public UserController(IUserService userService, IStringLocalizer<ModernWMS.Core.MultiLanguage> stringLocalizer){this._userService = userService;this._stringLocalizer = stringLocalizer;}#endregion/// <summary>/// Get a record by id/// </summary>/// <returns>args</returns>[HttpGet]public async Task<ResultModel<UserViewModel>> GetAsync(int id){var data = await _userService.GetAsync(id);if (data != null){return ResultModel<UserViewModel>.Success(data);}else{return ResultModel<UserViewModel>.Error(_stringLocalizer["not_exists_entity"]);}}
}

在这里插入图片描述


http://www.ppmy.cn/news/570491.html

相关文章

世达工具编号查询_世达工具目录

󰀀󰀀 󰀀󰀀 DESCRIPTION 󰀀󰀀 󰀀󰀀󰀀󰀀 09001 25 6.3mm 25PC. 1/4" DR. SOCKET SET (METRIC) 182.00 12 09002 38 6.3mm 38PC. 1/4" DR. SOCKET SET (METRIC) 224.00 12 09003 5 10mm 5PC. 3/8" DR. TUNE UP KET 188.00 5 09004 58 10mm 58P…

零代码、一键生成、低成本,深兰科技硅基大脑SaaS平台国内首发

在6月20日举行的2023中国(苏州)独角兽企业大会上&#xff0c;深兰科技创始人、董事长陈海波在主旨演讲中宣布&#xff0c;深兰科技推出“深兰科技硅基大脑SaaS平台”&#xff0c;旨在为个人和企业提供更便捷、更全面的大语言模型智能化应用。 AI大模型驱动“智慧涌现”&#xf…

MOOG驱动器维修DM2020穆格伺服驱动器维修

MOOG驱动器维修DM2020穆格伺服驱动器维修 穆格驱动器维修DM2020 MOOG驱动器维修CCE26EANLNL0B01-07 MOOG驱动器维修MSC系列驱动器故障代码维修 经验丰富 伺服驱动器的常见故障有过压、缺相、过流、接地、有显示无输出、不显示、不运转、报警等等。 那就是缺相造成的故障问题,…

台达0.4KW伺服上电报AL013

硬件&#xff1a;PLC三菱FX1s&#xff0d;20MT-001 驱动器&#xff1a;台达ASDA-B2-0421-B 伺服电机&#xff1a;台达ECMA-C20604PS 程序&#xff1a;开平 查看PDF&#xff1a;ASDA-B2_M_SC_20110425.pdf P9-10页。AL013为紧急停止&#xff0c;写着的处理方法&#xff1a;…

国产伺服威科达追剪专用型伺服驱动器型号参数

产品名称 规格型号 适配功率 额定电流 追剪型驱动器F VEC-VC-00323F-M-E 0.4-0.75KW 3A 追剪型驱动器F VEC-VC-00623F-M-E 1.5KW 6A 追剪型驱动器F VEC-VC-01223F-M-E 2.2KW 12A 追剪型驱动器F VEC-VC-00733F-M-E 1.5-4KW 7A 追剪型驱动器F VEC-VC-01233F-M-E 5.5KW 12A 追剪型…

维智WSD-A2系列伺服驱动器用户手册(MECHATROLINK-Ⅱ总线通信型)

安全注意事项 注意事项根据不遵守可能会造成危害的程度&#xff0c;包括以下类型&#xff1a; 警告&#xff1a;特别需要提示的内容。如果不遵守此类信息&#xff0c;可能会造成人身伤害甚至是死亡、机器损坏、或者其他财产损失。 注意&#xff1a;一般类型信息&#xff0c;包…

贝加莱ACOPOSACOPOS1022,1010,1045,1022,1090,1180,1320系列伺服驱动器故障号,故障信息及解决方法

贝加莱ACOPOS1022,1010,1045,1022,1090,1180,1320系列伺服驱动器故障号,故障信息及解决方法ACOPOS1022,1010,1045,1022,1090,1180,1320等 故障号 故障信息 解决方法 4007 跟随误差超限停止 1、检查负载 2、脱离负载&#xff0c;单独动作电机 3、检查伺服控制参数 4008&#xff…

台达DVP50MC和台达DOP-110WS通信设置

打开DVP50MC 软件&#xff1b; 选择DVP50MC系列&#xff0c;点击确定&#xff1b; 点击新建&#xff0c;创建一个新项目&#xff1b; 弹出新建项目对话框&#xff0c;输入项目名称等信息&#xff0c;点击确定&#xff1b; 点击工具&#xff0c;选择通信设置&#xff1b; 弹出的…