NuGet引用的程序集的ad-hoc别名如何工作?

时间:2018-05-25 08:45:25

标签: msbuild nuget

我们的构建中存在一些问题,我们的一些依赖项迫使我们在较新版本中使用的库的真正旧版本。转换到不再明确提及NuGet包带来的DLL资源的新样式项目文件时,情况稍微恶化,因为我们失去了通过别名标记此类程序集的能力。

现在,我在NuGet的GitHub上找到了a solution of basically the same problem。我通过以下方式根据我们的需求调整了它:

<Target Name="AliasLog4Net" BeforeTargets="FindReferenceAssembliesForReferences;ResolveReferences">
  <ItemGroup>
    <ReferencePath Condition="'%(FileName)' == 'log4net'">
      <Aliases>l4n</Aliases>
    </ReferencePath>
  </ItemGroup>
</Target>

它神奇地运作。我想知道为什么。

  • 我找不到ReferencePath的文档。具体来说,除了Condition之外,我想知道我可以在%(FileName)属性中测试哪些内容?
  • 如何记录此逻辑?有没有办法以这种方式为别名的每个ad-hoc应用程序写出一些东西?

0 个答案:

没有答案