自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文教會你.Net之多語言配置

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

[[398967]]

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

開篇語

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

介紹

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

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

配置

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

注入容器

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

啟用配置

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

語言配置文件

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

image.png

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

image.png

讀取資源文件

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

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

測試

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

默認輸出

image.png

HTTP報文

和常見的請求一樣添加Accept-Language請求頭即可

  1. Accept-Language:zh-CN 

image.png

Cookie

默認使用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

 

責(zé)任編輯:武曉燕 來源: 鵬祥
相關(guān)推薦

2022-08-26 07:02:57

Python工具分割

2024-05-09 08:14:09

系統(tǒng)設(shè)計語言多語言

2009-08-03 17:33:01

ASP.NET多語言支

2014-04-16 14:50:20

Spark

2024-03-04 14:15:16

OpenAI語言嵌入模型

2012-04-19 11:40:21

Titanium

2009-08-25 10:44:50

C#實現(xiàn)多語言

2011-08-05 17:54:33

Cocoa Touch 多語言

2014-07-09 09:20:06

WPFWPF應(yīng)用

2010-01-06 13:41:51

.NET Framew

2023-12-27 07:40:43

HTTP服務(wù)器負載均衡

2022-02-20 09:56:28

TCPIP網(wǎng)絡(luò)協(xié)議

2023-07-31 21:56:54

哨兵系統(tǒng)redis

2025-02-03 00:25:00

Asp語言配置

2022-08-09 07:22:15

語言數(shù)據(jù)庫程序

2021-12-07 06:02:15

Redis Docker運維

2022-07-26 00:00:03

語言模型人工智能

2024-11-18 17:16:18

Python性能優(yōu)化編程

2024-11-20 16:12:31

Python圖像處理計算機視覺

2023-08-04 10:18:15

點贊
收藏

51CTO技術(shù)棧公眾號