【后端】Core框架版本和发布时间以及.net 6.0启动文件的结构

2023年,第35周,第1篇文章。给自己一个目标,然后坚持总会有收货,不信你试试!
.NET Core 是一个跨平台的开源框架,用于构建现代化的应用程序。它在不同版本中有一些重要的区别和发布时间

目录

  • 一、Core版本和发布时间
    • 1.1、NET Core 1.x系列
    • 1.2、.NET Core 2.x系列
    • 1.3、.NET Core 3.x系列
    • 1.4、.NET 5(里程碑)
    • 1.5、.NET 6
  • 二、Core和C#版本
    • 3.1、打开程序文件
    • 3.2、打开启动文件

在这里插入图片描述

一、Core版本和发布时间

下面是主要版本的简要概述:

1.1、NET Core 1.x系列

于2016年发布。
它是.NET Core 的最初版本,提供了跨平台、高性能和轻量级的开发体验。
然而,由于初始版本的限制和局限性,这个系列不再得到维护和支持。

1.2、.NET Core 2.x系列

于2017年发布。
这个系列带来了许多重要的改进和特性,例如更好的性能、更强大的开发工具和更广泛的平台支持。
它还加强了与.NET Framework 的兼容性,并引入了ASP.NET Core 2.x,用于构建Web应用程序。

1.3、.NET Core 3.x系列

于2019年发布。
这个系列引入了许多令人激动的特性,包括支持Windows桌面应用程序开发、WPF和Windows Forms的现代化和改进、C# 8.0的语言特性等。
此外,还引入了新的.NET Core 3.1版本,作为一个长期支持(LTS)版本。

1.4、.NET 5(里程碑)

于2020年发布。
这是一个重要的版本,汇集了.NET Framework 和.NET Core 的功能,并成为一个单一的统一平台。
它旨在提供更高的性能、更多的可选组件和更广泛的支持。

1.5、.NET 6

发布于2021年11月发布。
这将是一个重要的版本,将带来更多的改进、新特性和改进性能。
.NET 6 支持多种操作系统和平台,包括 Windows、 macOS 和 Linux,同时还提供了对 Web、移动和云等应用程序类型的支持。

在.NET 6中,开发者可以使用新的语言特性、增强的工具和框架组件来构建高性能和现代化的应用程序。
此外,.NET 6还引入了新的 MAUI(Multi-platform App UI)框架,用于构建跨平台的本机应用程序,包括支持移动和桌面平台。

需要注意的是,从.NET 5开始,微软决定放弃“Core”命名,而改为以年份作为版本编号。这是为了更好地反映.NET平台的连续性和一致性。

二、Core和C#版本

在 .NET Core 中,每个版本都与相应版本的 C# 语言进行了搭配。
以下是一些常见的 .NET Core 版本和相应的 C# 语言版本的对应关系:

1).NET Core 1.x: 对应 C# 6.0
2).NET Core 2.x: 对应 C# 7.0 和 C# 7.1
3).NET Core 3.x: 对应 C# 8.0
4).NET 5: 对应 C# 9.0
5).NET 6: 对应 C# 10.0

需要注意的是,C# 语言版本与 .NET Core 版本不是完全绑定的,这意味着你可以使用低版本的 C# 语言特性在较高版本的 .NET Core 中开发。
然而,如果你想要使用某个特定版本的 C# 语言的最新功能和改进,你可能需要使用相应的 .NET Core 版本。

此外,还要注意,C# 语言版本的正式支持取决于你所使用的开发工具(例如 Visual Studio)的版本。
确保使用的开发工具支持所需的 C# 语言版本,并且按照相应的语法和规则来编写代码。

需要指出的是,以上是常见的对应关系,具体的版本对应关系可以根据实际情况变化。
因此,建议在使用特定的 .NET Core 版本时,查阅相应的文档或官方发布信息,以确定该版本对应的 C# 语言版本。

三、.net core 6.0启动文件
在 .NET 6.0 中,Startup 文件的创建方式与之前的版本相比有一些变化。
下面是在 .NET 6.0 中创建 Startup 文件的步骤:

3.1、打开程序文件

首先,在你的项目(例如 ASP.NET Core Web 应用程序)中,打开 Program.cs 文件。

CreateHostBuilder 方法中,注册和配置应用程序的服务和设置。
在这里你可以使用 .ConfigureServices.Configure 方法来添加服务和配置应用程序。

using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;var builder = WebApplication.CreateBuilder(args);// 配置服务
builder.Services.AddControllersWithViews();
// ...// 配置应用程序
var app = builder.Build();
app.UseRouting();
app.UseEndpoints(endpoints =>
{endpoints.MapControllers();// ...
});app.Run();

3.2、打开启动文件

确保你的项目中存在一个名为 Startup.cs 的文件。如果不存在该文件,可以手动创建它。
打开 Startup.cs 文件,并确保它包含命名空间引用和类的定义。

using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;namespace YourNamespace
{public class Startup{public IConfiguration Configuration { get; }public Startup(IConfiguration configuration){Configuration = configuration;}// ConfigureServices 方法用于配置应用程序的服务public void ConfigureServices(IServiceCollection services){services.AddControllersWithViews();// ... 添加其他服务配置}// Configure 方法用于配置应用程序的请求处理管道public void Configure(IApplicationBuilder app){if (env.IsDevelopment()){app.UseDeveloperExceptionPage();}else{app.UseExceptionHandler("/Home/Error");app.UseHsts();}app.UseHttpsRedirection();app.UseStaticFiles();app.UseRouting();app.UseAuthorization();// 配置端点路由app.UseEndpoints(endpoints =>{endpoints.MapControllerRoute(name: "default",pattern: "{controller=Home}/{action=Index}/{id?}");});}}
}

确保在 Program.csCreateHostBuilder 方法中设置启动类为 Startup 类。

builder.ConfigureServices((hostContext, services) =>
{// ...
}).ConfigureWebHostDefaults(webBuilder =>
{webBuilder.UseStartup<YourNamespace.Startup>();
});

现在,你已经成功创建了 Startup 文件,并定义了应用程序的服务和请求处理管道配置。
可以在 Startup 类中添加更多的中间件、配置选项和服务来满足你的应用程序需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/53556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫:绕过5秒盾Cloudflare和DDoS-GUARD

本文章仅供技术研究参考&#xff0c;勿做它用&#xff01; 5秒盾的特点 <title>Just a moment...</title> 返回的页面中不是目标数据&#xff0c;而是包含上面的代码&#xff1a;Just a moment... 或者第一次打开网页的时候&#xff1a; 这几个特征就是被Cloud…

【QT】绘制旋转等待

很高兴在雪易的CSDN遇见你 ,给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 程序中经常会遇到耗时的操作,需要提供等待的窗口,防止用户多次点击造成卡顿等问题。本文分享旋转等待技术,希望对各位小伙伴有所帮助!结果如下:

Unity 之transform.LookAt() 调整一个物体的旋转,使其朝向指定的位置

文章目录 总的介绍补充&#xff08;用于摄像机跟随的场景&#xff09; 总的介绍 transform.LookAt 是 Unity 引擎中 Transform 组件的一个方法&#xff0c;用于调整一个物体的旋转&#xff0c;使其朝向指定的位置。通常情况下&#xff0c;它被用来使一个物体&#xff08;如摄像…

盘点 2023 十大免费开源 WAF

WAF 是 Web Application Firewall 的缩写&#xff0c;也被称为 Web 应用防火墙。区别于传统防火墙&#xff0c;WAF 工作在应用层&#xff0c;对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果&#xff0c;使其免于受到黑客的攻击。 近几年经济增速开始放缓&#xff0c;科…

基于Java+SpringBoot+vue前后端分离可盈保险合同管理系统设计实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

SpingMVC拦截器-用户登录权限控制分析

视频链接&#xff1a;08-SpringMVC拦截器-用户登录权限控制代码实现2_哔哩哔哩_bilibili 114 1、做了一个用户跟角色添加的相关操作 1.1 这个后台工程&#xff0c;没有进行相关操作也能够进行登录&#xff1a; 2、现在我做一个用户的权限控制&#xff0c;如果当前我没有进行操…

解决Springboot创建工程时,pom.xml文件中的插件spring-boot-maven-plugin报红

在初始创建工程完成之后&#xff0c;发现pom文件中有错误 spring-boot-maven-plugin这一行会报红 解决办法&#xff1a;在代码中添加版本信息 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-…

Mybatis的综合案例-学生信息查询系统 用于校验是否真正学习掌握了动态SQL

Mybatis的综合案例-学生信息查询系统 需求一&#xff1a;当用户输入的学生姓名不为空&#xff0c;则只根据学生信息进行查询; 当用户输入的学生姓名为空&#xff0c;且专业不为空&#xff0c;那么就根据学生专业进行学生的查询 需求二&#xff1a;查询所有id值小于5的学生信息…

git常用操作命令(不定时更新)

git常用操作命令 将某个分支的某次提交迁移到另外一个分支查询这次提交的ID号方法一方法二 切换到目标分支执行commitID合并指令 将某个分支的某次提交迁移到另外一个分支 查询这次提交的ID号 方法一 方法二 切换到目标分支 git checkout 目标分支名 执行commitID合并指令 gi…

Dataset类实践

Dataset类实践 蚂蚁蜜蜂分类数据集和下载链接https://download.pytorch.org/tutorial/hymenoptera_data.zip Dataset&#xff1a;提供一种方式去获取数据及其lable Q&#xff1a;如何获取每个数据及其lable 重写构造方法和获取标签方法 Q&#xff1a;告诉我们总共有多少数据 …

leetcode739. 每日温度 单调栈

自己思路&#xff1a; 想到用两个栈&#xff0c;一个维护元素、另一个维护下标。但是还是无法处理有重复元素的问题&#xff08;用哈希表来存储的时候&#xff09;。所以就看了答案的思路。 答案思路&#xff1a; 从前往后遍历&#xff0c;维护一个单调栈。栈存放数组的下标。…

WPF基础入门-Class7-WPF-MVVN框架

WPF基础入门 Class7-MVVN框架 使用框架可以省掉如Class6中的ViewModelBase.cs的OnPropertyChanged&#xff0c;亦方便命令传参 1、NuGet安装CommunityToolkit.Mvvm&#xff08;原Mircrosoft.Toolkit.Mvvm&#xff09;也可以安装MVVMLight等其他集成库 2、显示页面&#xff1…

小研究 - JVM 逃逸技术与 JRE 漏洞挖掘研究(五)

Java语言是最为流行的面向对象编程语言之一&#xff0c; Java运行时环境&#xff08;JRE&#xff09;拥有着非常大的用户群&#xff0c;其安全问题十分重要。近年来&#xff0c;由JRE漏洞引发的JVM逃逸攻击事件不断增多&#xff0c;对个人计算机安全造成了极大的威胁。研究JRE安…

Compose - 基本使用

一、概念 1.1 Compose优势 由一个个可以组合的Composable函数拼成界面&#xff0c;方便维护和复用。布局模型不允许多次测量&#xff0c;提升了性能。Compose可以和View互操作&#xff08;相互包含对方&#xff09;。 1.2 声明式UI APP展示的数据绝大多数不是静态数据而是会…

[论文分享]TSPTM-survey:时间序列预训练模型研究综述

目录 1 概要 1.1 贡献点 2 背景 2.1 时序挖掘(TSM)任务 2.2 时间序列的深度学习模型 2.3 预训练模型优势 3 TS-PTMS 概述 3.1 监督预训练 3.1.1 基于分类的预训练 3.1.1.1 通用编码器 3.1.1.2 对齐编码器 3.1.1.3 模型重编程 3.1.1.4 总结 3.1.2 基于预测的预训练…

MySQL数据库中间件Mycat介绍及下载安装(教程)

一&#xff0c;介绍 MyCat是开源的、活跃的、基于Java语言编写的MySQL数据库中间件。可以像使用MySQL一样来使用MyCat&#xff0c;对于开发人员来说根本感觉不到MyCat的存在。 开发人员只需要连接MyCat即可&#xff0c;而具体底层用到几台数据库&#xff0c;每一台数据库服务器…

Linux TCP协议

传输层的协议主要有三个&#xff1a;TCP协议&#xff08;可靠&#xff09;、UDP协议&#xff08;不可靠&#xff09;和SCPT协议&#xff08;不可靠&#xff09;。 一、TCP协议的概念 TCP协议也称传输控制协议&#xff0c;是一种可靠的、面向连接的、基于字节流的传输层通信协…

缓存最佳实践

目录 前言 一、Cache Aside&#xff08;旁路缓存&#xff09;策略 二、不一致解决场景及解决方案 一、数据库主从不一致 二、缓存与数据库不一致 三、问题分析 三、缓存误用 一、多服务共用缓存实例 二、调用方缓存数据 三、缓存作为服务与服务之间传递数据的媒介 四…

二叉搜索树-----红黑树

✅<1>主页&#xff1a;我的代码爱吃辣&#x1f4c3;<2>知识讲解&#xff1a;数据结构——红黑树☂️<3>开发环境&#xff1a;Visual Studio 2022&#x1f4ac;<4>前言&#xff1a;红黑树也是一颗二叉搜索树&#xff0c;其作为map&#xff0c;set的底层…

[PyTorch][chapter 51][Auto-Encoder -1]

目录&#xff1a; 简介 损失函数 自动编码器的类型 一 AutoEncoder 简介&#xff1a; 自动编码器是一种神经网络&#xff0c;用于无监督学习任务.(没有标签或标记数据), 例如降维,特征提取和数据压缩. 主要任务&#xff1a; 1&#xff1a; 输入数据 …