.NET诞生20周年 .NET 7有什么新东西?

2023-11-09

 首个预览版已发布,.NET 7 有什么新东西?

  随着第一个预览版发布,.NET 7 渐渐浮出水面,.NET 高级项目经理 Jeremy Likness 在官方博客中介绍了 .NET 7 的主要发展方向,俺整理给大伙做一下介绍:

  .NET 7 建立在 .NET 6 建立的基础之上,其中包括一组统一的基础库、运行时(runtime)和 SDK、简化的开发体验和更高的开发人员生产力,.NET 7 主要关注领域包括:

  • 改进对云原生方案的支持

  • 升级旧项目的工具

  • 简化开发人员使用容器的难度

  现代客户端:.NET 多平台应用程序 UI (.NET MAUI)

  .NET MAUI 是 .NET 跨平台原生 UI 的未来,将成为 .NET 7 的一部分。

  2 月 15 日 .NET MAUI Preview 13 发布,在 .NET MAUI GA 为 .NET 6 发布后,它将会被包含在 .NET 7 中,并持续改进开发循环体验、支持最新的 .NET SDK 工具、更快的应用程序性能、共享代码功能以及增强的互操作性。

  感兴趣的兄弟可查看 .NET MAUI 的状态 和项目路线图,以获取更多信息。

  现代云:云原生和容器

  .NET 7 将改进开发人员体验:每个人都能更轻松地构建云原生应用程序,例如:

  • 简化安全身份验证和授权所需的设置和配置

  • 提高云原生应用程序启动和运行时的执行性能

  于此同时,.NET 7 将持续投资云原生配套的工具,比如投资 .NET 跨平台框架 Orleans —— 一个构建分布式应用程序的跨平台框架。具体投资措施有:继续增强 Orleans 的综合文档,并通过改进 Orleans 与 Azure App Services 和 Azure Container Apps 等现有云服务的集成,使其更易于使用和实施。

  此外, .NET 7 计划使用容器对 .NET 开发进行重大改进。例如:

  • 探索将“通过 MSBuild 直接构建容器”作为 SDK 的一项新功能

  • 计划增强遥测,以提高容器的可观察性

  • 专注于使容器镜像更小、更快、更安全,同时探索高要求的模型

  现代化:升级 .NET 应用程序

  .NET .NET 7 继续致力于让开发者将现有的 .NET 应用程序升级到最新的 .NET 平台和技术。

  .NET 升级助手包含更多分析器、代码修复程序,以及对更多应用程序类型的升级支持,可帮助开发者更轻松地升级 .NET 应用程序组合,减少升级应用的工作量。

d99cb3f14b06714577745c9f529b9e19.png

  此外,. NET 已有 20 年历史,它的应用程序非常多,其中一些热门应用比如 ASP.NET、WinForms、WPF 等,由于文档和教程较丰富,现代化的速度比较快,用户升级起来也轻松。但其中一些较冷门的项目,例如 WCF(Windows Communication Foundation,微软开发的一系列支持数据通信的应用程序框架),可能没有明确的现代化方向,.NET 将对这部分冷门应用提供适当的指导、文档和工具,以使这些 .NET 应用程序模型更易于升级。

  面向 .NET 7

  如果现在就要面向 .NET 7,则需要在项目文件中使用 .NET 7 Target Framework Moniker (TFM)。例如:

<TargetFramework>net7.0</TargetFramework>

  附全套 .NET 7 TFM,包括特定操作系统的 TFM。

  • net7.0

  • net7.0-android

  • net7.0-ios

  • net7.0-maccatalyst

  • net7.0-macos

  • net7.0-tvos

  • net7.0-windows

  如此便可以使用 .NET 7 测试现有的应用程序,目前来看,从 .NET 6 升级到 .NET 7 还是比较轻松的。


  相关阅读

  .NET 诞生 20 周年

  微软发布博客庆祝 Visual Studio .NET 和首个 .NET 版本诞生 20 周年。

  部分重要时间节点回顾:

09c734241a8cd054340a1d5e3f1392bc.png

d6c8f268f42945fc553248fedeb2ae4f.png

110e4ca845f79c15bc54393fa0230256.png

32de5dd6d5fa8c32beedb56d0f7137a3.png

a751eb0a0d204f00763fb047a25fcee4.png

  微软表示他们拥有深厚的开发者根基,从创建 DOS 和 BASIC 再到后面的 90 年代,他们提供了庞大的开发者工具组合,其中包含用于构建多种应用程序的不同工具和语言,每个工具都擅长解决不同的问题。然而这些应用程序很难互相进行通信,尤其是跨机器的场景下。

  随着互联网的兴起,技术开始向通过互联网进行通信的分布式系统转移,.NET 正是在这样的背景下诞生 —— 支持多语言、提供 runtime,以及一套完全兼容的库和 API。这也是微软为迎接互联网时代而转型的重要一环。

  同样是微软的另一次重大转型 —— 拥抱开源,.NET 再度走在了前沿。2014 年,微软在 GitHub 正式开源 .NET,并得到了开源社区的积极支持和贡献。现在 .NET 已发展成为跨浏览器、云、桌面、IoT 和移动应用程序的统一平台。

  去年发布的 .NET 6 提供了统一的基础库、SDK ,通过 C#10 和最小 API 的增强来简化开发体验,通过热重载实现高生产力。.NET MAUI 框架允许开发者使用单一代码库为 Windows、macOS、iOS 和 Android 构建原生应用程序。

    最后,微软透露了 .NET 7 Preview 1 将在本周发布,不过并未提及具体的细节。

dbc3dce95e01e5219f5caaa5177dd5e3.png

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET诞生20周年 .NET 7有什么新东西? 的相关文章

  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • 很好地处理数据库约束错误

    再一次 它应该很简单 我的任务是在我们的应用程序的域对象中放置一个具有唯一约束的特定字段 这本身并不是一个很大的挑战 我刚刚做了以下事情 public class Location more fields Column unique tru
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • 在游戏视图下添加 admob

    我一直试图将 admob 放在我的游戏视图下 这是我的代码 public class HoodStarGame extends AndroidApplication Override public void onCreate Bundle
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • 如何将 numpy.matrix 提高到非整数幂?

    The 运算符为numpy matrix不支持非整数幂 gt gt gt m matrix 1 0 0 5 0 5 gt gt gt m 2 5 TypeError exponent must be an integer 我想要的是 oct
  • IntelliJ - 调试模式 - 在程序内存中搜索文本

    我正在与无证的第三方库合作 我知道有一定的String存储在库深处的某个字段中的某处 我可以预测的动态值 但我想从库的 API 中获取它 有没有一种方法可以通过以下方式进行搜索 类似于全文搜索 full程序内存处于调试模式并在某个断点处停止
  • 有没有一种快速方法可以从 Jar/war 中删除文件,而无需提取 jar 并重新创建它?

    所以我需要从 jar war 文件中删除一个文件 我希望有类似 jar d myjar jar file I donot need txt 的内容 但现在我能看到从 Linux 命令行执行此操作的唯一方法 不使用 WinRAR Winzip
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • Netty:阻止调用以获取连接的服务器通道?

    呼吁ServerBootstrap bind 返回一个Channel但这不是在Connected状态 因此不能用于写入客户端 Netty 文档中的所有示例都显示写入Channel从它的ChannelHandler的事件如channelCon
  • Nuitka 未使用 nuitka --recurse-all hello.py [错误] 编译 exe

    我正在尝试通过 nuitka 创建一个简单的 exe 这样我就可以在我的笔记本电脑上运行它 而无需安装 Python 我在 Windows 10 上并使用 Anaconda Python 3 我输入 nuitka recurse all h
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • Eclipse 中 Spring MVC 模型对象的 (jsp /jstl) 视图中的代码辅助

    在 Spring MVC 中 当将对象放置在视图模型中时 如下所示 public String getUser Model model fetch user model addAttribute user user return viewN
  • 具有特定参数的 Spring AOP 切入点

    我需要创建一个我觉得很难描述的方面 所以让我指出一下想法 com x y 包 或任何子包 中的任何方法 一个方法参数是接口 javax portlet PortletRequest 的实现 该方法中可能有更多参数 它们可以是任何顺序 我需要
  • Trie 数据结构 - Java [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否有任何库或文档 链接提供了在 java 中实现 Trie 数据结构的更多信息 任何帮助都会很棒 Thanks 你可以阅读Java特里树
  • ServletContainer 类未找到异常

    我无法再编译我的球衣项目 并且出现以下异常 GRAVE Servlet Project API threw load exception java lang ClassNotFoundException com sun jersey spi
  • Python 分析:“‘select.poll’对象的‘poll’方法”是什么?

    我已经使用 python 分析了我的 python 代码cProfile模块并得到以下结果 ncalls tottime percall cumtime percall filename lineno function 13937860 9
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data

随机推荐

  • Ros 端口配置

    IP gt services 转载于 https blog 51cto com jafy00 704251
  • 基于uml的面向对象的概要设计

    1 什么是概要设计 为什么要进行概要设计 白话解释 概要设计 顾名思意 大概简要的设计 大概简要是从整体来说 不是说不准确含糊之意 设计什么呢 前面我们进行了系统的需求分析 有两个成果 1 系统用例图 2 类图集合 所以我们的概要设计要在1
  • 训练图像识别神经网络,神经网络训练过程图解

    卷积神经网络怎么生成图片 需要使用类似GAN的生成模型去做 望采纳GAN的基本原理其实非常简单 这里以生成图片为例进行说明 假设我们有两个网络 G Generator 和D Discriminator 正如它的名字所暗示的那样 它们的功能分
  • 系统更新pip无法使用

    报错信息如下 WARNING pip is configured with locations that require TLS SSL however the ssl module in Python is not available p
  • Hadoop、Spark等5种大数据框架对比,你的项目该用哪种?

    Hadoop Spark等5种大数据框架对比 你的项目该用哪种 2016 11 23 大愚若智 译 InfoQ 作者丨Justin Ellingwood 译者丨大愚若智 审校丨Cindy 本文将介绍并对比5种主流大数据框架 助你更深层次了解
  • 毕业设计 树莓派+云平台实时室内环境监测系统

    文章目录 0 前言 1 简介 2 主要器件 3 DHT11温湿度传感器 4 具体实现 5 部分代码 5 最后 0 前言 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的毕设题目缺少创新和亮点 往往达不到毕业答辩的要求 这两年不断有学
  • Google浏览器首页被篡改(非常有效的解决方法)

    问题描述 1 本人谷歌浏览器首页被hao 123篡改 2 浏览器输入chrome version 可以看到 命令行 最后面被篡改 解决方法 1 在chrome浏览器输入chrome version gt 复制命令行内容 gt 粘贴到浏览器属
  • 关于区块链的原理:去中心化的分布式记账系统

    区块链技术的核心是所有当前参与的节点共同维护交易及数据库 它使交易基于密码学原理而不基于信任 使得任何达成一致的双方 能够直接进行支付交易 不需第三方的参与 从技术上来讲 区块是一种记录交易的数据结构 反映了一笔交易的资金流向 系统中已经达
  • RFID在图书馆系统管理中的有哪些应用优势?

    RFID在图书馆系统管理中的应用优势 截至目前 基于RFID技术在图书馆行业的应用 算算已有十年有余 从传统的简单的自助借还图书到目前多种智能化功能的实现 其技术发展进步的速度非常迅速 尤其是与传统的条形码和磁条技术相比 具有其明显的优势
  • 交互式SHELL和非交互式SHELL、登录SHELL和非登录SHELL的区别

  • keil5在点击debug时,全速运行按钮不能按的情况

    在我程序编译完成后 下载了程序 点击debug进行调试 跳转到debug页面时 发现 run 按钮已经按下 但是不在运行代码 只是在空跑 出现这种情况 目前有以下几种情况 1 在 options for target 选项中的 target
  • Tableau_day6

    1 填充地图 1 1 各省售电量填充地图 导入数据 设置地理格式 双击 省市 生成一个符号地图 将当期值放入颜色 生成填充地图 在地理面积内进行颜色填充 设置颜色 设置未知 设置 位置 标签 显示位置信息 修改某些位置信息 要调整注释边框
  • 远程调试(Remote Debugging)

    当运行的程序出现问题时 我们通常通过调试来追踪和定位问题 但是 当运行错误的机器上没有调试工具 我们就需要实现远程调试 简单地说 就是要调试的程序和调试器不在一台机器上 移动端web调试 alert虽然是个土方法 但也是万能的 不过这样会中
  • Javascript与CSS在IE和Firefox中的误区及区别

    Javascript中的常见问题 1 集合类对象问题 现有代码中许多集合类对象取用时使用 IE 能接受 Firefox 不能 解决方法 改用 作为下标运算 如 document forms formName 改为 Js代码 document
  • Vm配置虚拟网络信息&配置虚拟机防火墙&取消软件安装限制&解决问题Temporary failure in name resolution

    目录 配置环境 一 前置知识 1 NAT模式 用的比较多 2 桥接模式 3 仅主机模式 二 修改虚拟网卡信息 1 首先我们可以看到我们这里有两张网卡 问题一 你们可以想一下假如我没有桥接到我的真实可以上网的网卡上会怎么样 这种错误我之前犯过
  • Google敦促更快普及VP9视频压缩技术

    转自 http www cnetnews com cn 2013 0516 2159618 shtml CNET科技资讯网 05月16日 国际报道 计算机行业才谈及VP8解编码技术 Google就希望人们接受它的VP9技术了 Google的
  • DES 密钥生成 加密解密

    import java security InvalidKeyException import java security NoSuchAlgorithmException import java security SecureRandom
  • E1,T1, PRI, Trunk

    E1 T1 PRI Trunk 北美的24路脉码调制PCM简称T1 速率是1 544Mbit s 欧洲的30路脉码调制PCM简称E1 速率是2 048Mbit s 我国采用的是欧洲的E1标准 E1的一个时分复用帧 其长度T 125us 共划
  • read_csv文件读写参数详解————

    python pandas IO tools 之csv文件读写 英文原文 pandas IO tools 读取csv文件 pd read csv 写入csv文件 pd to csv pandas还可以读取一下文件 read csv read
  • .NET诞生20周年 .NET 7有什么新东西?

    首个预览版已发布 NET 7 有什么新东西 随着第一个预览版发布 NET 7 渐渐浮出水面 NET 高级项目经理 Jeremy Likness 在官方博客中介绍了 NET 7 的主要发展方向 俺整理给大伙做一下介绍 NET 7 建立在 NE