Nuget不为名称以.Resources结尾的程序集添加引用

时间:2015-10-01 11:04:21

标签: nuget visual-studio-2015 project-reference

使用NuGet包管理器安装包含名称以.Resources结尾的程序集的程序包时,程序包安装正确,但不会将对该程序集的引用添加到项目中。

工具: -

  • Visual Studio Enterprise 2015 v4.6.00081
  • Visual Studio 2015的NuGet包管理器v3.2.60914.10516

.nuspec文件:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>ClassLibrary.TestPackage</id>
    <version>1.0.0.0</version>
    <title>ClassLibrary.TestPackage</title>
    <authors>Me</authors>
    <owners>Me</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>$description$</description>
    <tags></tags>
  </metadata>
</package>

.nupkg内容: -

  
      
  • LIB      
        
    • net46(.NETFramework,Version = 4.6)
    •   
    • ClassLibrary.Resource.dll
    •   
    • ClassLibrary.Resources.dll
    •   
    • ClassLibrary.Resourcex.dll
    •   
    • ClassLibrary.ResourcesWhatever.dll
    •   
    • ClassLibrary.Whatever.dll
    •   
    • ClassLibrary.WhateverResources.dll
    •   
  •   

所有6个程序集都是空类库,目标是.Net 4.6。

安装nuget软件包时,将为所有程序集添加引用,但不包括: -

  
      
  • ClassLibrary.Resources.dll
  •   

特别是那些名称以.Resources结尾的程序集会导致问题。

升级此类程序集时问题仍在继续 - 引用仍然指向以前的版本,实际上程序包本身仍保留在packages文件夹中。

当然,解决方法是简单地手动添加引用,但对于多个项目中使用的定期更改的库,这被证明是重复且令人厌烦的。

1 个答案:

答案 0 :(得分:2)