mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-23 18:04:26 +08:00
74 lines
1.2 KiB
Markdown
74 lines
1.2 KiB
Markdown
|
|
# 05-本地化支持
|
|||
|
|
|
|||
|
|
本地化 API 支持多语言资源管理。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎯 资源文件
|
|||
|
|
|
|||
|
|
### 文件位置
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
Localization/
|
|||
|
|
├── zh-CN.json # 简体中文
|
|||
|
|
├── en-US.json # 英文
|
|||
|
|
├── ja-JP.json # 日文
|
|||
|
|
└── ko-KR.json # 韩文
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 资源格式
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"PluginName": "我的插件",
|
|||
|
|
"Settings": {
|
|||
|
|
"Title": "设置",
|
|||
|
|
"Save": "保存"
|
|||
|
|
},
|
|||
|
|
"Messages": {
|
|||
|
|
"Hello": "你好,{0}!",
|
|||
|
|
"Error": "错误:{0}"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📝 使用本地化
|
|||
|
|
|
|||
|
|
### 注入 IStringLocalizer
|
|||
|
|
|
|||
|
|
```csharp
|
|||
|
|
public class MyService
|
|||
|
|
{
|
|||
|
|
private readonly IStringLocalizer<MyService> _localizer;
|
|||
|
|
|
|||
|
|
public MyService(IStringLocalizer<MyService> localizer)
|
|||
|
|
{
|
|||
|
|
_localizer = localizer;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void DoWork()
|
|||
|
|
{
|
|||
|
|
// 简单字符串
|
|||
|
|
var name = _localizer["PluginName"];
|
|||
|
|
|
|||
|
|
// 带参数
|
|||
|
|
var message = _localizer["Messages.Hello", "用户"];
|
|||
|
|
|
|||
|
|
// 嵌套键
|
|||
|
|
var title = _localizer["Settings.Title"];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📚 参考资源
|
|||
|
|
|
|||
|
|
- [Microsoft.Extensions.Localization 文档](https://docs.microsoft.com/dotnet/api/microsoft.extensions.localization)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
*最后更新:2026年4月*
|