visual studio - c#参考.props文件

本文关键字:props 文件 参考 studio visual | 更新日期: 2023-09-27 17:49:27

当我将这段代码直接添加到.csproj文件中时,引用被正确解析:

<ItemGroup>
  <Reference Include="base_csharp">
    <HintPath>D:'Repositories'MDSBuild'MdsDrivers'deps'Base'install'bin'Windows'MSVC'x86'Debug'base_csharp.dll</HintPath>
  </Reference>
</ItemGroup>

然而,当我把完全相同的代码放在一个道具文件

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <Reference Include="base_csharp">
      <HintPath>D:'Repositories'MDSBuild'MdsDrivers'deps'Base'install'bin'Windows'MSVC'x86'Debug'base_csharp.dll</HintPath>
    </Reference>
  </ItemGroup>
  <ItemGroup>
</Project>

然后把这个props文件导入到。csproj

<Import Project="D:'Repositories'MDSBuild'MdsDrivers'deps'Base'scripts'props'base_csharp.props" /

我得到了无法解析引用的警告:

警告MSB3245:无法解析此引用。无法找到程序集"base_csharp"。检查以确保程序集存在于磁盘上。如果你的代码需要这个引用,你可能会得到编译错误。

代码是完全相同的,所有的路径都是绝对的,但是由于一些无法解释的原因,它无法找到。dll文件。我做错了什么?

visual studio - c#参考.props文件

一个问题是您已经打开了2 "ItemGroup"标签和关闭只有一个。

如果你的路径是绝对的,你可以这样写:

<ItemGroup>
        <Reference Include= "D:'Repositories'MDSBuild'MdsDrivers'deps'Base'install'bin'Windows'MSVC'x86'Debug'base_csharp.dll" />
</ItemGroup>