3

我试图ReferencePath在我的 .csproj 文件中指定一个使用新格式的自定义。

这是它的样子:

<PropertyGroup>
  <ReferencePath>C:\...\binaries</ReferencePath>
</PropertyGroup>

参考以下:

<Reference Include="MyDll">
  <Private>false</Private>
  <SpecificVersion>false</SpecificVersion>
</Reference>

C:\...\binaries包含 MyDll.dll

但是,在构建期间我仍然得到

警告 MSB3245:无法解析此引用。找不到程序集“MyDll”。检查以确保该程序集存在于磁盘上。如果您的代码需要此引用,您可能会遇到编译错误。

我正在尝试切换到ReferencePathfrom HintPaths,因为它们维护起来很麻烦。

4

2 回答 2

2

在新的 SDK csproj 中,您可以使用AssemblySearchPaths变量而不是ReferencePath变量来影响程序集探测

<AssemblySearchPaths>
  $(YOUR_SEMICOLON_SEPARATED_DIR_PATHS);$(AssemblySearchPaths);
</AssemblySearchPaths>

但是,请小心使用此技巧不起作用的旧 .NET Framework 项目。

于 2018-09-30T22:06:02.217 回答
0

ReferencePath 可以手动添加到新的 csproj:

<PropertyGroup>
    <AssemblySearchPaths>
       $(AssemblySearchPaths);
       $(ReferencePath);
    </AssemblySearchPaths>
</PropertyGroup>
于 2019-01-11T16:31:45.407 回答