编程语言
首页 > 编程语言> > c#-nuget包中的嵌入式资源

c#-nuget包中的嵌入式资源

作者:互联网

我正在构建要与NuGet打包在一起的C#库.它在Resources目录中的.resx文件中包含一些错误代码转换,该文件称为Errors.en.resx.该文件的“构建操作”设置为“嵌入资源”(我已经在.csproj文件中确认),但是,在构建项目时,资源最终存储在“ en”文件夹中的单独dll中.

这样可以正常工作,但是与NuGet打包时会丢失“ en”文件夹,这意味着尝试使用ResourceManager来获取消息的尝试失败.

理想情况下,我希望将资源嵌入到主.dll中,但如果失败,我将解决将资源dll添加到NuGet包中的问题.到目前为止,各种设置更改和NuGet规格更改均未成功.

解决方法:

最后,最简单的解决方案是在NuGet Spec中显式添加资源文件:

  <files>
    <file src="bin\$configuration$\en\*.dll" target="lib\net45\en" />
  </files>

参考:Specifying Files to Include in the Package

标签:resx,nuget,c
来源: https://codeday.me/bug/20191119/2039135.html