代码之家  ›  专栏  ›  技术社区  ›  Martin Prikryl

显示使用添加的NuGet包项目。解决方案资源管理器中的目标文件

  •  7
  • Martin Prikryl  · 技术社区  · 6 年前

    基于此问题: Prevent duplicating files in NuGet content and contentFiles folders ,我正在使用 build/Project.targets 我的NuGet包的文件,用于将一些文件添加到项目生成输出。例如:

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <ItemGroup>
        <Content Include="$(MSBuildThisFileDirectory)..\tools\test.jpg">
          <Link>test.jpg</Link>
          <Visible>false</Visible>
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
          <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
        </Content>
      </ItemGroup>
    </Project>
    

    现在,我希望这些文件在 解决方案管理器 ,以便开发人员可以调整项目属性。但是设置 <Visible> 标记到 true 没有任何效果。这可能吗?


    我很高兴使用完全不同的方法,仍然允许NuGet包将文件添加到项目构建输出中 packages.config PackageReference 格式,但在中显示文件 解决方案管理器

    1 回复  |  直到 6 年前
        1
  •  2
  •   Leo Liu    6 年前

    显示使用添加的NuGet包项目。解决方案资源管理器中的目标文件

    恐怕你不能用 .targets 文件这是因为当您使用 .target 文件中,此项已像“添加为链接”一样添加到项目中。这意味着此项目尚未真正添加到您的项目中。因此,它不会显示在解决方案资源管理器中。

    要解决此问题,可以使用nuget创建两个nuget包 content 对于 packages.config 格式和 contentFiles PackageReference 格式。

    希望这有帮助。