如何使用CodeSpirit多语言国际化功能实现Beta版本的全语言支持?
摘要:📋 概述 CodeSpirit 框架现已支持完整的前后端多语言国际化功能,提供中英文双语支持,基于 .NET 资源文件和 AMIS locale,通过 Settings 组件实现全局、租户、用户三级语言配置。
📋 概述
CodeSpirit 框架现已支持完整的前后端多语言国际化功能,提供中英文双语支持,基于 .NET 资源文件和 AMIS locale,通过 Settings 组件实现全局、租户、用户三级语言配置。
版本: v1.0.0
支持语言: 简体中文(zh-CN)、英文(en)
更新日期: 2025年12月28日
Github:xin-lai/CodeSpirit
Gitee:magicodes/CodeSpirit
🎯 核心特性
✅ 双语支持:中文(默认)+ 英文
✅ 全栈覆盖:后端 API + 前端 UI
✅ 多级配置:系统默认 → 租户默认 → 用户偏好
✅ 类型安全:使用 .resx 资源文件,编译时强类型访问
✅ 动态切换:用户可实时切换语言,无需重新登录
✅ AMIS 兼容:集成 AMIS 的 locale 机制
✅ DataAnnotations 支持:验证特性自动本地化
✅ DTO描述多语言:支持字段描述信息的多语言
✅ 零侵入:无需修改业务表结构,基于 Settings 组件
🏗️ 架构设计
语言解析优先级
Cookie(用户手动切换)
↓ (未设置)
User Settings(用户偏好)
↓ (未设置)
Tenant Settings(租户默认)
↓ (未设置)
Global Settings(系统默认)
↓ (未设置)
zh-CN(最终回退)
Settings 存储结构
// 全局默认语言
Module: "Localization"
Key: "DefaultLanguage"
Value: "zh-CN"
Scope: Global
// 租户默认语言
Module: "Localization"
Key: "DefaultLanguage"
Value: "en"
Scope: Tenant
ScopeId: "{tenantId}"
// 用户偏好语言
Module: "Localization"
Key: "PreferredLanguage"
Value: "en"
Scope: User
ScopeId: "{userId}"
🚀 快速开始
1. 配置已完成
本地化服务已在 ServiceDefaults 中自动注册,无需额外配置。
