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月*
|