如何防止代码分析dll被发布到生产服务器上?

Nic*_*s S 6 dll code-analysis publishing visual-studio-2019 netcoreapp3.1

使用 Visual studio 2019发布 ASP.NET Core 3 API netcoreapp3.1项目时,也会发布多个代码分析 dll。此外,这些 dll 还以 13 种语言发布,外加英文版本。

如何防止 Visual Studio 在生产服务器上发布代码分析 dll(包括英文版本)?

这些 dll 是:

Microsoft.CodeAnalysis.CSharp.resources.dll
Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
Microsoft.CodeAnalysis.resources.dll
Microsoft.CodeAnalysis.Workspaces.resources.dll
Run Code Online (Sandbox Code Playgroud)

我在 Window 10 上使用 Microsoft Visual Studio Enterprise 2019 版本 16.4.5。

发布配置为:

Configuration: Release x64
Target framework: netcoreapp3.1
Deployment mode: Framework dependent
Target runtime: win-x64

File Publish Options:
Produce single file: no
Enable ReadyToRun compilation: yes
Delete all existing files prior to publish: yes
Run Code Online (Sandbox Code Playgroud)

小智 1

我遇到了同样的问题,并能够使用以下方法解决它。您可以更改项目配置,将 ExcludeAssets 添加到以下参考:

<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.2" ExcludeAssets="All"/>
Run Code Online (Sandbox Code Playgroud)

当像这样发布时,我不再看到文件夹和 dll。