ASP.NET Core 9.0的7个方面重大更新!

随着.Net 9发布,ASP.NET Core 9.0也迎来重大更新,主要体现在以下7个方面。

1、静态资产传递优化

**MapStaticAssets新功能:**用于优化ASP.NET Core应用中静态资产的交付,旨在处理所有UI框架,包括Blazor、Razor、Pages和MVC,是UseStaticFiles的一个替代方法。

**核心作用:**最大程度地减少提供给浏览器的资产大小,减少网络传输的字节数,避免将过时版本的文件提供给客户端。

2、Blazor的新功能

.NET MAUI Blazor Hybrid和Web应用解决方案模板:可更轻松地创建共享相同UI的.NET MAUI本机应用和Blazor Web客户端应用,自动创建相应的项目,并使用共享的Razor类库(RCL)来维护UI的Razor组件。

**改善服务器端重新连接体验:**当用户导航回已断开连接的应用时,将立即尝试重新连接,页面会自动刷新以防止用户需要手动刷新。

**身份验证状态序列化简化:**通过新的API可以更轻松地向现有Blazor Web App添加身份验证,默认情况下只会序列化服务器端的名称和角色声明。

3、SignalR的新功能

中心支持多态类型:中心方法现在可接受基类(而不是派生类)来实现多态方案,需要注释基类型才能实现多形性。

4、最小API的新功能

TypedResults类增强:添加了InternalServerError和InternalServerError,用于从终结点返回"500内部服务器错误"响应。

构建Problem和ValidationProblem结果类型的改进:支持使用IEnumerable<KeyValuePair<string, object?>>的重载来初始化errors和extensions属性。

5、OpenAPI的新功能

**内置支持OpenAPI文档生成:**ASP.NET Core提供内置支持,用于通过Microsoft.AspNetCore.OpenApi包生成代表基于控制器的API或最小API的OpenAPI文档。

**支持剪裁和本机AOT:**新的内置OpenAPI支持剪裁和本机AOT,可以通过新建ASP.NET Core Web API(本机AOT)项目并添加Microsoft.AspNetCore.OpenAPI包来使用。

6、身份验证和授权的新功能

**OpenIdConnectHandler支持推送授权请求(PAR):**添加了对推送授权请求的支持,以防止浏览器中的网络攻击者查看或篡改授权参数。

7、其他新功能

**HybridCache库:**弥补了现有IDistributedCache和IMemoryCache API中的差距,并添加了新功能,如"踩踏"保护和可配置的序列化。

**开发人员异常页改进:**将终结点元数据添加到开发人员异常页面,改进了字典和其他键值集合的调试显示。

**IIS中应用程序回收期间的503错误修复:**默认情况下,IIS收到回收或关闭通知与ANCM通知托管服务器启动关闭之间现在有1秒的延迟。

**指标改进:**可以在生产环境中以最少的影响继续使用,用于调查性能问题和观察对Kestrel造成影响的外部攻击。

自定义Kestrel命名管道终结点:通过新的CreateNamedPipeServerStream方法允许按终结点自定义管道。

**信任Linux上的ASP.NET Core HTTPS开发证书:**现在将ASP.NET Core HTTPS开发证书配置为受信任的证书以用于Chromium浏览器、Mozilla Firefox和.NET API。

**模板更新:**ASP.NET核心项目模板和库已更新为使用最新版本的Bootstrap、jQuery和jQuery验证。

  • End -

更多开源项目: https://github.com/bianchenglequ/NetCodeTop

我是编程乐趣,一个.Net开发经验老程序员,欢迎"关注"我,每天为你分享开源项目和编程知识。

也欢迎加入【.Net技术编程交流社区】,和大家共同学习交流!,
点击加入https://bbs.csdn.net/topics/613465368

相关推荐
Long_poem5 分钟前
【自学笔记】Spring Boot框架技术基础知识点总览-持续更新
spring boot·笔记·后端
hong_zc1 小时前
SpringBoot 配置文件
java·spring boot·后端
神马都会亿点点的毛毛张1 小时前
【Docker教程】万字长文详解Docker命令
java·运维·后端·docker·容器
朗迹 - 张伟1 小时前
Golang连接使用SqlCipher
开发语言·后端·golang
m0_748257461 小时前
创建一个简单的spring boot+vue前后端分离项目
vue.js·spring boot·后端
m0_748234901 小时前
Spring Boot项目接收前端参数的11种方式
前端·spring boot·后端
神马都会亿点点的毛毛张2 小时前
【SpringBoot教程】SpringBoot整合Caffeine本地缓存及Spring Cache注解的使用
java·spring boot·后端·spring·缓存·caffeine
zhyhgx2 小时前
【Spring】Spring配置文件
java·服务器·spring boot·后端·spring·配置文件
shepherd枸杞泡茶3 小时前
第3章 3.2 配置系统 .NET Core配置系统
后端·c#·asp.net·.net
Ciderw3 小时前
MySQL日志undo log、redo log和binlog详解
数据库·c++·redis·后端·mysql·面试·golang