Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 部署.Net Core 2.0应用程序包括150+;DLL_C#_Visual Studio_.net Core_Webdeploy - Fatal编程技术网

C# 部署.Net Core 2.0应用程序包括150+;DLL

C# 部署.Net Core 2.0应用程序包括150+;DLL,c#,visual-studio,.net-core,webdeploy,C#,Visual Studio,.net Core,Webdeploy,我最近从2017年到2019年更新了Visual Studio版本,并安装了.net core 2.2版。我有.NETCore2.0Web项目,其中只包含通过Nudget打包系统添加的DLL,如下所示 此文件夹仅包含22个项目 但是在VS更新之后,当我发布应用程序时,我有一个输出文件夹,如下所示 此文件夹包含近200个DLL。我甚至没有更改发布设置。我没有任何这些依赖项,我要确保部署方法不是自包含部署,而是依赖于框架的部署 我正在使用CLI命令发布我的应用程序 dotnetpublish-c

我最近从2017年到2019年更新了Visual Studio版本,并安装了.net core 2.2版。我有.NETCore2.0Web项目,其中只包含通过Nudget打包系统添加的DLL,如下所示

此文件夹仅包含22个项目

但是在VS更新之后,当我发布应用程序时,我有一个输出文件夹,如下所示

此文件夹包含近200个DLL。我甚至没有更改发布设置。我没有任何这些依赖项,我要确保部署方法不是
自包含部署
,而是
依赖于框架的部署

我正在使用CLI命令发布我的应用程序

dotnetpublish-c发布

我发布的文件夹中有这么多DLL的原因是什么

编辑:

下面是我的.csproj文件的外观:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="AstrodyneTdi.Web" Version="3.2.4" />
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
    <PackageReference Include="NLog.Extensions.Logging" Version="1.0.0-rtm-alpha4" />
    <PackageReference Include="RestSharp" Version="106.6.9" />
  </ItemGroup>

  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />
  </ItemGroup>

</Project>

netcoreapp2.0

不久前,我不得不将此部分添加到.csproj文件中,特别是使用AspNetCoreTargetManifest发布


netcoreapp2.2
任意CPU;x64
真的

我会猜到,正如您所说,它被设置为一个自包含的部署。只是确定一下,你的“PublishWithAspNetCoreTargetManifest”是否设置为true?@Jordan我在.csproj文件中没有提到这个标志。我更新了我的问题来展示它的样子。嗯,好吧,我添加了一个答案,因为它太罗嗦了,无法发表评论。我猜这不是你的问题。这就是我所得到的,祝你好运:)@Jordan有趣的是,它确实奏效了!出于某种原因,将其升级到VS2019需要我将该标志放入我的.csproj文件中。谢谢。
  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <Platforms>AnyCPU;x64</Platforms>
    <PublishWithAspNetCoreTargetManifest>true</PublishWithAspNetCoreTargetManifest>
  </PropertyGroup>