如何解决.NET Core中带有文化后缀的嵌入式资源
我想在ASP.NET Core 3项目中将两个文件的Build Action
设置为Embedded resource
。
FileName.json
FileName.en-GB.json
但是当我尝试获取嵌入式资源时,只有一个文件(第一个文件,没有文化后缀)
Namespace.Folder.FileName.json
起初,我猜想也许我必须直接在.csproj
文件中添加第二个文件。
<ItemGroup>
<EmbeddedResource Include="Folder\**\*.json" />
<EmbeddedResource Include="Folder\FileName.en-GB.json" />
</ItemGroup>
但是会引发错误:
包含重复的“ EmbeddedResource”项目
这意味着它已经被添加。
预先感谢
解决方法
<ItemGroup>
<!-- This line includes all .json files in Folder and it's subfolders-->
<EmbeddedResource Include="Folder\**\*.json" />
<!-- This line is not needed because all .json files are already included -->
<EmbeddedResource Include="Folder\FileName.en-GB.json" />
</ItemGroup>
因此将其更改为
<ItemGroup>
<!-- This line includes all .json files in Folder and it's subfolders-->
<EmbeddedResource Include="Folder\**\*.json" />
</ItemGroup>
请注意,FileName.en-GB.json将包含在附属程序集中,而不是在主输出程序集中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。