在 ASP.NET Core 3.0+ web 项目中已经不须要在 .csproj 中添加对 Microsoft.AspNetCore.App 的引用
<PackageReference Include="Microsoft.AspNetCore.App" />
可是在 .NET Core 3.0+ 类库项目中若是不引用 Microsoft.AspNetCore.App ,就没法使用 ASP.NET Core 3.0 的程序集。在类库项目的 .csproj 中将 <Project Sdk="Microsoft.NET.Sdk"> 改成 <Project Sdk="Microsoft.NET.Sdk.Web"> 能够解决这个问题,可是会出现新的问题,build 时会出现下面的错误提示:
Program does not contain a static 'Main' method suitable for an entry point
请问如何解决?git
在 github 上找到了答案 Using Microsoft.NET.Sdk.Web on a class library prevents the app to start
原来使用 Microsoft.NET.Sdk.Web 时 OutputType 默认会被设置为 Exe ,改成 Library 就能解决github
<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> <OutputType>Library</OutputType> </PropertyGroup> </Project>