我试图将内置.NET Core的Web API发布到Ubuntu服务器,但是依赖性很难。我是C#中的新手,并且没有找到关于如何在publish命令中包含依赖项的简明答案。我一直认为他们已被编入.dll
,但我在运行我的应用时遇到此错误
Error:
An assembly specified in the application dependencies manifest (api.deps.json) was not found:
package: 'Newtonsoft.Json', version: '11.0.2'
path: 'lib/netstandard2.0/Newtonsoft.Json.dll'
不应该包含在"发布"发布后的目录?
我在Mac上使用.NET Core然后发布到Ubuntu服务器应该会影响到这里的任何内容。
的.csproj:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />
</ItemGroup>
</Project>