日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
一文教會(huì)你.Net之多語(yǔ)言配置

本文轉(zhuǎn)載自微信公眾號(hào)「鵬祥」,作者AZRNG。轉(zhuǎn)載本文請(qǐng)聯(lián)系鵬祥公眾號(hào)。

望江ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

開篇語(yǔ)

首先非常感謝各位朋友或技術(shù)愛好者的關(guān)注。

介紹

支持多語(yǔ)言使網(wǎng)站可以覆蓋更廣泛的受眾。ASP.NET Core 提供的服務(wù)和中間件可將網(wǎng)站本地化為不同的語(yǔ)言。

本次示例環(huán)境:vs2019、net5

配置

無需引用Nuget包即可實(shí)現(xiàn)以下功能。

注入容器

 
 
 
 
  1. services.AddLocalization(t =>
  2. {
  3.     t.ResourcesPath = "Language";
  4. });

啟用配置

 
 
 
 
  1. var supportedCultures = new List()
  2. {
  3.     new CultureInfo("zh-CN"),
  4.     new CultureInfo("en-US")
  5. };
  6. app.UseRequestLocalization(new RequestLocalizationOptions
  7. {
  8.     //這里指定默認(rèn)語(yǔ)言包
  9.     DefaultRequestCulture = new RequestCulture("en-US"),//為了測(cè)試配置默認(rèn)語(yǔ)言英文
  10.     SupportedCultures = supportedCultures,
  11.     SupportedUICultures = supportedCultures
  12. });

語(yǔ)言配置文件

需要在根目錄新建一個(gè)文件夾,文件夾名字就是ResourcesPath的名字。資源文件(resx結(jié)尾)存放路徑需要和使用的地方目錄結(jié)構(gòu)一致。(右鍵文件夾>添加>新建項(xiàng))

image.png

語(yǔ)言包下的目錄結(jié)構(gòu)和MVC對(duì)應(yīng),控制器對(duì)應(yīng)控制器,視圖對(duì)應(yīng)視圖。資源文件命名方式為使用文件的文件名稱加上語(yǔ)言代碼。

image.png

讀取資源文件

在控制器中使用,依賴注入資源文件

 
 
 
 
  1. [ApiController]
  2.   [Route("[controller]")]
  3.   public class HomeController : ControllerBase
  4.   {
  5.       private readonly IStringLocalizer _localizer;
  6.       public HomeController(IStringLocalizer localizer)
  7.       {
  8.           _localizer = localizer;
  9.       }
  10.       [HttpGet]
  11.       public string Get()
  12.       {
  13.           return _localizer["succeed"].Value;//如果找不到succeed的本地化值,那么就返回字符串“succeed”
  14.       }
  15.   }

測(cè)試

有多種方法可以告訴程序需要使用哪一個(gè)語(yǔ)言文件,下面只說常見的使用,還支持自定義 。

默認(rèn)輸出

image.png

HTTP報(bào)文

和常見的請(qǐng)求一樣添加Accept-Language請(qǐng)求頭即可

 
 
 
 
  1. Accept-Language:zh-CN

image.png

Cookie

默認(rèn)使用cookie名稱.AspNetCore.Culture,值是

 
 
 
 
  1. c=zh-CN|uic=zh-CN
  2. c=zh-CN
  3. uic=zh-CN

c是Culture,uic是UICulture

URL參數(shù)

三種寫法,效果一樣

 
 
 
 
  1. ?culture=zh-CN&ui-culture=zh-CN
  2. ?culture=zh-CN
  3. ?ui-culture=zh-CN

image.png

參考文檔

https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/localization?view=aspnetcore-5.0


網(wǎng)頁(yè)題目:一文教會(huì)你.Net之多語(yǔ)言配置
文章起源:http://www.5511xx.com/article/cdgeeeh.html