在.NET 8 RC1 版本中 MAUI、ASP.NET Core 和 EF8 的新特性
从年初2 月份发布第一个预览版,经历7个预览版后,Microsoft 西雅图时间9月13日发布了 .NET 8 RC 1: https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/[1], 这是该框架在 11 月初正式发布之前的两个版本中的第一个。 .NET 8 RC1 是在生产中受支持,随着开发团队修复和完善内容,该框架基本上已经准备好了新的和令人兴奋的功能,以便在 11 月 14 日开始的 .NET Conf 2023 [2]期间正式发布RTM。
- .NET 8 预览版 1:NativeAOT 升级和新的Blazor United[3]
- NET 8 预览版 2 亮点是Blazor[4]
- ASP.NET Core 8 预览版 4的重大更新[5]
- .NET 8 Preview 5发布,了解一下Webcil 是啥[6]
- .NET 8 Preview 6发布,支持新的了Blazor呈现方案 和 VS Code .NET MAUI 扩展[7]
- .NET 8 发布的最后一个预览版Preview 7, 下个月发布RC[8]

.NET 8 的大多数新特性和功能都已开发好,开发团队主要进行润色,这并不是说RC没有引入一些新的好东西,详见下面的摘要:
.NET 8
.NET 8 RC1现在是生产可用的,这是我们的两个版本候选中的第一个。此版本包括适用于 Android 和 WASM 的新 AOT 模式、System.Text.Json 改进以及对容器的 Azure 托管标识支持。具体细节包括:
- 适用于android和WASM的AOT模式:开发人员可以将他们的 .NET 代码直接编译为 WebAssembly 或 Android 的本机代码,从而加快启动和运行时性能,但应用尺寸更大。该团队还引入了新选项来去除未使用的中间语言 (IL) 代码,以减小应用大小。
- System.Text.Json 改进:其中包括用于 IAsyncEnumerable 流式反序列化的新扩展方法,以及支持修剪 安全/源生成合约的 JsonContent 的新构造函数。
- Azure 托管标识对容器的支持:这有助于用户轻松地使用 Azure 容器注册表或使用 OAuth 令牌交换的其他注册表进行身份验证,而无需使用 docker 登录命令。
- 用于跨构建的 Win32 资源支持: 在非 Windows 平台上构建时,开发人员可以将 Win32 资源(如图标、清单和版本信息)嵌入到其应用程序中。
除了 9 月 13 日的公告发布之外,还可以在发行说明 [9]和.NET 8 中的新增功能[10]文档中找到更多信息。
.NET MAUI
MAUI是Xamarin.Forms的演变,因为它除了传统的iOS和Android移动目标之外,还增加了创建桌面应用程序的功能。尽管它遇到了开发问题并且 .NET 6 发布得很晚,但.NET 开发人员对该产品非常感兴趣,并且在最近宣布 Visual Studio for Mac 退役后密切关注它。一些.NET MAUI开发人员担心.NET MAUI可能会遭受同样的命运。也许考虑到这些问题,.NET 团队特别发布了一篇“在.NET 8候选版本1:质量中宣布.NET MAUI[11]”,并进一步说,“我们在.NET 8中的.NET MAUI工作的主要主题是代码质量。随着质量的提升,RC1 附带了上线许可证,可用于生产工作。以下是 RC1 中的一些注意事项,其中包括新功能、改进和性能优化:
- 内存泄漏:iOS 平台上影响编辑器、入口、MauiDoneAccessoryView、RefreshView、SwipeView、TimePicker、Picker 和 GraphicsView 的各种 UI 控件中解决了几个内存泄漏问题,旨在通过改进内存管理来确保更好的应用程序稳定性。
- UI 控件增强功能:解决的 UI 控件问题会影响多个平台上的复选框、刷新视图、轻扫项、标签和按钮,有助于使应用交互更顺畅。
- 特定于平台的修复:进行了修复以确保在不同平台(包括iOS,Android,Windows和macOS)上保持一致的用户体验,解决了边框剪切,窗口故障和图像加载问题等问题。
- 性能优化:改善内存使用率和资源生成的努力涉及优化,以提高应用程序性能和响应能力,特别是针对改进 CollectionView 的内存使用、资源生成控制和 Android 计时器问题。
Microsoft还加强了对苹果IDE Xcode 15的支持。“你现在可以使用Xcode 15测试版作为构建应用程序和管理模拟器的安装,这将在Visual Studio的下一个版本中提供。
ASP.NET Core
在这里,Blazor 是ASP.NET Core的重心,Blazor 让 Web 开发人员使用 C# 而不是 JavaScript 的又有了八个方面不同的改进(其中一些在 Microsoft 的主要 .NET 公告中进行了讨论):
- Blazor Web App应用模板更新
- 从其他程序集中发现用于静态服务器呈现的组件
- 路由改进
- 触发页面刷新
- 将任意属性传递到QuickGrid
- 确定表单域是否具有关联的验证消息
- 配置 .NET WebAssembly 运行时
- 提前 (AOT) 编译后修剪 .NET IL
开发团队还对很多方面(服务器和中间件、身份、单页应用SPA、指标)进行了调整,具体参见 ASP.NET .NET 8 候选版本 1 中的核心更新[12]。
EF Core 8
此数据驱动框架包含在 NuGet 包中,该包拥有超过 809.70 亿次下载,EF Core是 .NET 的现代ORM。它支持 LINQ 查询、更改跟踪、更新和架构迁移。EF Core通过提供程序插件API与SQL Server,Azure SQL Database,SQLite,Azure Cosmos DB,MySQL,PostgreSQL和其他数据库配合使用。公告帖子列出了多达70个项目,并附有指向每个项目的更多信息的链接。EF Core 8 中的新增功能[13]中还提供了详细信息.
相关链接:
- [1] .NET 8 RC1发布: https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/
- [2] .NET Conf 2023:https://www.dotnetconf.net/
- [3] .NET 8 预览版 1:NativeAOT 升级和新的Blazor United:https://www.cnblogs.com/shanyou/p/17143105.html
- [4] NET 8 预览版 2 亮点是Blazor:https://www.cnblogs.com/shanyou/p/17220483.html
- [5] ASP.NET Core 8 预览版 4的重大更新:https://www.cnblogs.com/shanyou/p/17437899.html
- [6] .NET 8 Preview
5发布,了解一下Webcil 是啥:https://www.cnblogs.com/shanyou/p/17479138.html - [7] .NET 8 Preview 6发布,支持新的了Blazor呈现方案 和 VS Code .NET MAUI 扩展:https://www.cnblogs.com/shanyou/p/17546509.html
- [8] NET 8
发布的最后一个预览版Preview 7, 下个月发布RC:https://www.cnblogs.com/shanyou/p/17615851.html - [9] .NET 8发行说明:https://github.com/dotnet/core/tree/main/release-notes/8.0
- [10] .NET 8 中的新增功能:https://learn.microsoft.com/zh-cn/dotnet/core/whats-new/dotnet-8
- [11] 在.NET 8候选版本1:质量中宣布.NET MAUI:https://devblogs.microsoft.com/dotnet/announcing-dotnet-maui-in-dotnet-8-rc-1/
- [12] ASP.NET .NET 8 候选版本 1 中的核心更新:https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-rc-1
- [13] EF Core 8 中的新增功能:https://aka.ms/ef8-new
在.NET 8 RC1 版本中 MAUI、ASP.NET Core 和 EF8 的新特性的更多相关文章
- 尝新体验ASP.NET Core 6预览版本中发布的最小Web API(minimal APIS)新特性
本文首发于<尝新体验ASP.NET Core 6预览版本中发布的最小Web API(minimal APIS)新特性> 概述 .NET开发者们大家好,我是Rector. 几天前(美国时间2 ...
- 【译】.NET 7 预览版 1 中的 ASP.NET Core 更新
原文 | Daniel Roth 翻译 | 郑子铭 .NET 7 预览版 1 现已推出!这是 .NET 下一个主要版本的第一个预览版,其中将包括使用 ASP.NET Core 进行 Web 开发的下一 ...
- 在docker中运行ASP.NET Core Web API应用程序
本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...
- 在Linux和Windows的Docker容器中运行ASP.NET Core
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott H ...
- 丙申年把真假美猴王囚禁在容器中跑 ASP.NET Core 1.0
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- Docker容器中运行ASP.NET Core
在Linux和Windows的Docker容器中运行ASP.NET Core 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott Hanselman就捷足先登了. ...
- docker中运行ASP.NET Core Web API
在docker中运行ASP.NET Core Web API应用程序 本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过 ...
- 在Visual Studio 2017中使用Asp.Net Core构建Angular4应用程序
前言 Visual Studio 2017已经发布了很久了.做为集成了Asp.Net Core 1.1的地表最强IDE工具,越来越受.NET系的开发人员追捧. 随着Google Angular4的发布 ...
- 【Asp.Net Core】在Visual Studio 2017中使用Asp.Net Core构建Angular4应用程序
前言 Visual Studio 2017已经发布了很久了.做为集成了Asp.Net Core 1.1的地表最强IDE工具,越来越受.NET系的开发人员追捧. 随着Google Angular4的发布 ...
- .NET Core 3.0预览版7中的ASP.NET Core和Blazor更新
.NET Core 3.0 Preview 7现已推出,它包含一系列ASP.NET Core和Blazor的新更新. 以下是此预览中的新功能列表: 最新的Visual Studio预览包括.NET C ...
随机推荐
- Asp-Net-Core开发笔记:API版本管理
前言 对于Web API应用程序而言,随着时间的推移以及需求的增加或改变,API必然会遇到升级的需求.事实上,Web API应用程序应该从创建时就考虑到API版本的问题.业务的调整.功能的增加.接口的 ...
- C++面试八股文:什么是智能指针?
某日二师兄参加XXX科技公司的C++工程师开发岗位第19面: 面试官:什么是智能指针? 二师兄:智能指针是C++11引入的类模板,用于管理资源,行为类似于指针,但不需要手动申请.释放资源,所以称为智能 ...
- 【后端面经-Java】Java创建线程的方法简介
目录 1. 线程的基本概念 1.1 线程 1.2 线程状态和生命周期 2. 创建线程的四种方法 2.1 继承Thread类 2.2 实现Runnable接口 2.3 实现Callable接口 2.4 ...
- 【Azure 媒体服务】Azure Media Player 在Edge浏览器中不能播放视频问题的分析与解决
问题描述 使用Azure Media Service 制作视频点播服务,在客户端使用 Azure Media Player 播放器在 Edge 浏览器中播放视频时候遇见无法播放的问题: 错误信息: T ...
- Kubernetes(k8s)访问控制:权限管理之RBAC鉴权
目录 一.系统环境 二.前言 三.Kubernetes访问控制 四.鉴权简介 五.配置客户端机器 六.设置k8s集群允许所有请求访问 七.设置k8s集群拒绝所有请求访问 八.RBAC授权 8.1 ro ...
- 【项目学习】ERC-4337 抽象账户项目审计过程中需要注意的安全问题
抽象账户是什么 抽象账户(也有叫合约钱包)是 EIP-4337 提案提出的一个标准.简单来说就是通过智能合约来实现一个"账户(account)",在合约中自行实现签名验证的逻辑.这 ...
- IoTOS-v1.2.1接入J-IM(t-io)后台通知App
IoTOS v1.2.1 一.登录页增加可修改轮播 登录页增加可修改数据轮播: 首页轮播图由背景图片.标题.介绍.按钮一.按钮二(可配置跳转地址打开方式)组合而成 二.登录页增加常用运营商平台& ...
- HTML前端js
ajax请求方法书写 $.ajax({ type:"POST", url:CONTEXT_PATH+"/appAudit/insertSnDocCountAdmin&qu ...
- AcWing 第87场周赛题解
T1 移动棋子 算出数值为 \(1\) 的点离 \((3, 3)\) 的距离即可. #include <iostream> #include <cstring> #includ ...
- 【小小demo】Springboot + Vue 增删改查
vue-table-ui 该工程提供的是 一个简单的 Vue + Element-UI 的表格,增删改查操作. 工程代码在最下面. 环境 jdk1.8 idea maven springboot 2. ...