Multilingual App Toolkit是否支持C#项目的多目标框架配置?
多目标框架下Multilingual App Toolkit(MAT)禁用解决方案
这是Multilingual App Toolkit Visual Studio扩展的固有特性,它的UI启用逻辑仅默认识别单目标框架(TargetFramework单数配置)的项目,切换为多目标框架(TargetFrameworks复数配置)后启用按钮灰显属于正常现象,并非你遗漏了基础配置,手动补充MAT专属的启用配置即可解决。
操作步骤
- 确认你已经安装了适配当前Visual Studio版本的最新MAT扩展
- 打开项目
.csproj文件,在首个PropertyGroup节点中手动添加MAT启用配置:
<PropertyGroup> <TargetFrameworks>netcoreapp3.1;net5.0</TargetFrameworks> <NeutralLanguage>fr</NeutralLanguage> <!-- 新增以下两个配置项 --> <MultilingualAppToolkitEnabled>true</MultilingualAppToolkitEnabled> <MultilingualAppToolkitVersion>4.0</MultilingualAppToolkitVersion> </PropertyGroup>
- 保存项目文件后右键点击解决方案,选择「重新加载项目」,此时MAT的所有功能(添加翻译语言、生成XLIFF翻译文件、编译生成多语言卫星程序集)都可以正常使用。
常见问题处理
如果编译时出现资源重复引用的报错,可以在项目文件中添加以下配置避免冲突:
<ItemGroup> <EmbeddedResource Update="*.resx" DependentUpon="$(MSBuildProjectName).cs" /> </ItemGroup>
如果你的多目标框架包含.NET Framework版本,还需要额外添加以下配置保证卫星程序集正常生成:
<PropertyGroup> <GenerateSatelliteAssembliesForCore>true</GenerateSatelliteAssembliesForCore> </PropertyGroup>
内容的提问来源于stack exchange,提问作者Crusty Applesniffer
相关产品推荐
相关产品推荐

