首页 > 解决方案 > 每次我在 Visual Studio [2019] [NuGet] 中重建项目时如何关闭 DocFX 构建

问题描述

我尝试开始使用 DocFX,它符合我的要求,但我有一个从长远来看相当麻烦的小问题。

每次我更改项目中的某些内容并启用调试时,DocFX 的 nuget 都会适应新的更改。

这是正确的行为,但我希望能够将其关闭一段时间。不需要很长时间,但是由于频繁的更改,它大大延长了测试任何东西的时间。

我正在查看用户手册: https ://dotnet.github.io/docfx/tutorial/docfx.exe_user_manual.html 我尝试自己做,但除了扔之外我没有找到任何方法从项目中删除。

标签: visual-studionugetdocfx

解决方案


每次我在 Visual Studio [2019] [NuGet] 中重建项目时如何关闭 DocFX 构建

这是 nuget 包的特性,docfx.console我建议你可以通过这种方式暂时关闭这个 nuget 包:

使用删除docfxnuget 包的新配置对其进行测试。

1)添加一个名为 test 的新配置

在此处输入图像描述

2)如果它是一个带有packages.config的网络框架项目,你应该

xxx.csproj文件中更改:

<Import Project="..\packages\docfx.console.2.55.0\build\docfx.console.targets" Condition="Exists('..\packages\docfx.console.2.55.0\build\docfx.console.targets')/>

 <Import Project="..\packages\docfx.console.2.55.0\build\docfx.console.targets" Condition="Exists('..\packages\docfx.console.2.55.0\build\docfx.console.targets') and '$(Configuration)'!='Test'" />

然后,您可以根据需要切换配置以实现目标。

测试配置不会消耗包,其他配置会消耗它。

==========================

如果是带有PackageReference的网络项目,需要在PackageReference<ExcludeAssets>buildtransitive</ExcludeAssets>节点下添加,防止消耗包的目标文件:</p>

像这样:

<ItemGroup>
        <PackageReference Include="docfx.console" >
            <Version>2.55.0</Version>
            <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
            <PrivateAssets>all</PrivateAssets>
            <ExcludeAssets>buildtransitive</ExcludeAssets>
        </PackageReference>
    </ItemGroup>

推荐阅读