ASP.NET Core Web
我们首先来看看ASP.NET Core有哪些优势?
- 跨平台:可以部署到Linux服务器上
- 内置一套对云和部署环境非常友好的配置模块
- 内置依赖注入
- IIS或者Kestrel(或者其它自定义)
- 轻量级、高性能、模块化的Http处理管线
- .NET Core 是开源的,并且基于nuget发布。 这让我们有了更大的空间去改造和扩展它
- 更易于现代化的项目开发,比如面向容器,微服务架构,对DevOps更友好

公司的决策层为什么要做这样的选择?
- 降低成本,提升效率
- 提升公司的技术品牌
- 更好的留住和培养现有的开发团队,以及招募到更好的开发者
ASP.NET Core Web 应用和 ASP.NET Web 应用有一些相似之处,但也有一些重要的区别。
- ASP.NET Core Web 应用和 ASP.NET Web 应用都是用于创建 Web 应用程序的框架。
- 它们都支持多种语言,包括 C#、VB.NET 和 F#。
- 它们都可以使用 Visual Studio 进行开发。
- ASP.NET Core Web 应用是跨平台的,可以在 Windows、Linux 和 macOS 上运行,而 ASP.NET Web 应用只能在 Windows 上运行。
- ASP.NET Core Web 应用使用 .NET Core 运行时,而 ASP.NET Web 应用使用 .NET Framework 运行时。
- ASP.NET Core Web 应用提供了更轻量级的框架,可以更快地启动和运行,而 ASP.NET Web 应用则更加重型。
- ASP.NET Core Web 应用使用了新的中间件架构,可以更加灵活地配置和定制请求管道处理流程。
总之,ASP.NET Core Web 应用和 ASP.NET Web 应用都是用于创建 Web 应用程序的框架,它们有一些相似之处,但也有一些重要的区别。
Microsoft.AspNetCore.Http †[edit]
比如最常用的Microsoft.AspNetCore.Http这个类库,提示已弃用,我以为是换其他包了
最后我们在微软官网文档里找到了答案:
随着 .NET Core 3.0 发布,许多 ASP.NET Core 程序集不再作为包发布到 NuGet。 而是改为将这些程序集包含在通过 .NET Core SDK 和运行时安装程序安装的 Microsoft.AspNetCore.App 共享框架中。 若要查看不再发布的包列表,请参阅删除过时的包引用。
自 .NET Core 3.0 起,使用 Microsoft.NET.Sdk.Web MSBuild SDK 的项目隐式引用此共享框架。 使用 Microsoft.NET.Sdk 或 Microsoft.NET.Sdk.Razor SDK 的项目必须引用 ASP.NET Core,才能使用共享框架中的 ASP.NET Core API。
若要引用 ASP.NET Core,请将以下 <FrameworkReference> 元素添加到项目文件: