.NET 6新特性试用 | SDK工作负载

前言

为了应对.NET SDK能够支持的程序集项目(例如iOS、Android、WASM)的不断增长,从.NET 6开始,允许用户仅安装必要的SDK(例如ASP.NET Core),而不是一次性安装“完整版”SDK。

这一切的基础,是新的dotnet CLI命令——workload

Demo

1.列表

首先,列出可安装的工作负载:

dotnet workload search

目前支持的工作负载如下:

Workload ID           Description
-------------------------------------------------------------------------------------------
android               .NET SDK Workload for building Android applications.
android-aot           .NET SDK Workload for building Android applications with AOT support.
ios                   .NET SDK Workload for building iOS applications.
maccatalyst           .NET SDK Workload for building macOS applications with MacCatalyst.
macos                 .NET SDK Workload for building macOS applications.
maui                  .NET MAUI SDK for all platforms
maui-android          .NET MAUI SDK for Android
maui-desktop          .NET MAUI SDK for Desktop
maui-ios              .NET MAUI SDK for iOS
maui-maccatalyst      .NET MAUI SDK for Mac Catalyst
maui-mobile           .NET MAUI SDK for Mobile
maui-windows          .NET MAUI SDK for Windows
tvos                  .NET SDK Workload for building tvOS applications.
wasm-tools            .NET WebAssembly build tools

2.安装

然后,下列命令安装需要的工作负载:

dotnet workload install {Workload_ID}

我们安装maui-windows试试:

dotnet workload install maui-windows//输出
Updated advertising manifest microsoft.net.sdk.android.
Updated advertising manifest microsoft.net.sdk.ios.
Updated advertising manifest microsoft.net.sdk.macos.
Updated advertising manifest microsoft.net.workload.emscripten.
Updated advertising manifest microsoft.net.sdk.maccatalyst.
Updated advertising manifest microsoft.net.sdk.tvos.
Updated advertising manifest microsoft.net.workload.mono.toolchain.
Updated advertising manifest microsoft.net.sdk.maui.
Installing Microsoft.Maui.Core.Ref.win.6.0.101.2068-x64.msi ............ Done
Installing Microsoft.Maui.Core.Runtime.win.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Controls.Ref.win.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Controls.Runtime.win.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Essentials.Ref.win.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Essentials.Runtime.win.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.AspNetCore.Components.WebView.Maui.6.0.101.2068-x64.msi .... Done
Installing Microsoft.Maui.Dependencies.6.0.101.2068-x64.msi .... Done
Installing Microsoft.Maui.Controls.Build.Tasks.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Sdk.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Extensions.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Resizetizer.Sdk.6.0.101.2068-x64.msi ...... Done
Installing Microsoft.Maui.Templates.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Core.Ref.any.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Core.Runtime.any.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Controls.Ref.any.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Controls.Runtime.any.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Essentials.Ref.any.6.0.101.2068-x64.msi ..... Done
Installing Microsoft.Maui.Essentials.Runtime.any.6.0.101.2068-x64.msi ..... DoneSuccessfully installed workload(s) maui-windows.

可以看到,它并没有安装多余的SDK,比如Maui的android版本。

打开VS 2022,新建项目,已经可以创建MAUI项目了,默认情况下是没有的:

dcf2fd8390554ee1e27ce97840b06c77.png

3.更新

另外,你可以使用下列命令,将所有已安装的SDK工作负载更新为最新版本:

dotnet workload update//输出
Updated advertising manifest microsoft.net.sdk.ios.
Updated advertising manifest microsoft.net.sdk.android.
Updated advertising manifest microsoft.net.sdk.macos.
Updated advertising manifest microsoft.net.workload.emscripten.
Updated advertising manifest microsoft.net.sdk.tvos.
Updated advertising manifest microsoft.net.sdk.maccatalyst.
Updated advertising manifest microsoft.net.sdk.maui.
Updated advertising manifest microsoft.net.workload.mono.toolchain.Successfully updated workload(s): maui-windows.

4.卸载

当然,你可以将已安装的SDK工作负载卸载:

dotnet workload uninstall maui-windows//输出
Removing workload installation record for maui-windows...
Removing Microsoft.AspNetCore.Components.WebView.Maui.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Controls.Build.Tasks.6.0.101.2068-x64.msi .... Done
Removing Microsoft.Maui.Controls.Ref.any.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Controls.Ref.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Controls.Runtime.any.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Controls.Runtime.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Core.Ref.any.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Core.Ref.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Core.Runtime.any.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Core.Runtime.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Dependencies.6.0.101.2068-x64.msi .... Done
Removing Microsoft.Maui.Essentials.Ref.any.6.0.101.2068-x64.msi .... Done
Removing Microsoft.Maui.Essentials.Ref.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Essentials.Runtime.any.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Essentials.Runtime.win.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Extensions.6.0.101.2068-x64.msi .... Done
Removing Microsoft.Maui.Resizetizer.Sdk.6.0.101.2068-x64.msi .... Done
Removing Microsoft.Maui.Sdk.6.0.101.2068-x64.msi ..... Done
Removing Microsoft.Maui.Templates.6.0.101.2068-x64.msi .... DoneSuccessfully uninstalled workload(s): maui-windows

e770101f715c43e6cc8bbb25ec0a4261.png

结论

可以将此功能理解为SDK的包管理器,保证我们始终安装正确的SDK以及版本。

如果你觉得这篇文章对你有所启发,请帮忙点个或者在看

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

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

相关文章

“24小时城市图鉴”看人间,每个城市都有属于她的独特记忆!

全世界只有3.14 % 的人关注了爆炸吧知识一个城市的名片是留给人们对一座城最初的印象,无论是车站、居民区,每个城市都有着属于她自己的故事。由央视纪录频道推出的系列纪录片《城市24小时》(第一季)聚焦郑州、武汉、深圳、成都、厦…

史上最可怕最震撼的46亿年世界历史!看完我跪了....

▲ 点击查看雨果在《笑面人》中曾说过:历史是什么,是过去传到将来的回声,是将来对过去的反映。哈佛大学、哥伦比亚大学、加州大学,这些精英摇篮,都要求所有学生必须选修历史。马云在演讲中说,自己喜欢历史&…

使用 dotnet format 格式化代码

使用 dotnet format 格式化代码Introdotnet-format 在之前的版本是一个独立的命令行工具,在 .NET 6 里已经成为了 SDK 的一部分,我们可以使用,使用 dotnet format 我们可以结合 editorconfig 保持代码风格的一致,我们也可以将 dot…

计算机管理用户和组无法访问,同一工作组无法访问如何解决【详解】

在生活中,不知道你是否和小编一样:计算机会出现各种各样,千奇百怪的问题,其中最常见的是同一工作组无法访问的问题。由于某种不知名的原因,在打开计算机网上邻居时,计算机会弹出讨人厌的提示——无法访问。…

关于Asp.net core配置信息读取的源码分析梳理

概述我们都知道asp.net core配置信息的读取离不开IConfigurationSource和IConfigurationProvider这两个类,ConfigurationSource可以提供一个ConfigurationProvider,然后去读取信息。究竟他们之间有着怎样的千丝万缕,我们一起来看看源码。首先…

MCGS与PLC通讯不上

为什么80%的码农都做不了架构师?>>> 组态串口参数错误 应为偶校验 转载于:https://my.oschina.net/5star/blog/118301

MySQL案例分析--QueryCache

QueryCache联动内容:http://blog.itpub.net/29510932/viewspace-1694922/ -------------------------------------------------------------------------------------------------正文--------------------------------------------------------------------------------------…

Android之PowerManager简介

android.os. PowerManager 通过 PowerManager 类我们可以对设备的电源进行管理。对该类API的使用将影响到电池寿命。只有在必须使用WakeLocks的时候,才使用WakeLocks,且在不使用它的时候要及时释放(release). 默认情况下,当用户对手机有一段时间没有操作后࿰

什么时候告白最合适?

1 电饭煲吐血了!(素材来源网络,侵删)▼2 比冰淇淋掉地上更悲剧的事(素材来源网络,侵删)▼3 老师的火气又上去了▼4 什么时候最适合告白(via.银教授,侵删)▼…

helloworld:一个完整的WCF案例

服务端 1.创建一个空的解决方案:WCFDemo: 2.创建一个宿主控制台程序:Host 3.右击Host项目,选择“添加”--“新建项”,选择“WCF服务”创建名为“Service1.cs”的服务 如此:VS2010已经为我们创建了 IService1.cs Service1.cs a…

极简实用的Asp.NetCore模块化框架决定免费开源了

背景在开发这个框架之前,前前后后看过好几款模块化的框架,最后在一段时间内对ABP VNext痛下狠心,研究一段时间后,不得不说 ABP VNext的代码层面很规范,也都是一些最佳实践,开发出一个模块效率也很高。但不得…

我做的OSC界面

2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/hotbain/blog/118542

Fragment生命周期

通过Android Studio创建包含两个Fragment的Activity:QuestListFragment、QuestInputFragment 调用的过程如下: 打开APPQuestListFragment﹕ onAttachQuestListFragment﹕ onCreateQuestListFragment﹕ onCreateViewQuestListFragment﹕ onViewCreatedQue…

使用Nagios监控esx、esxi、vcenter

系统环境:Centos6.3 最小化安装环境准备yum install –y libxml2-devel make gcc1、安装前准备 (1)创建nagios用户和用户组 [rootlocalhost ~]#useradd -s /sbin/nologin nagios [rootlocalhost ~]#mkdir /usr/local/nagios [rootlocalhost ~…

龙芯上市是自主路线被广泛认可的风向标

日前,龙芯通过科创板上市委员会审核,此次计划募资35.12亿元。其中,12.58亿元用于先进制程芯片研发及产业化项目,10.54亿元用于高性能通用图形处理器芯片及系统研发项目;12亿元用于补充流动资金。公开材料还披露了很多细…

量子计算机是程序员的未来,研究者:量子计算机一旦成功问世,时间也许会失去存在的意义...

贝尔实验室的科学家索尔,自从在1994年35界计算科学基础年会上提出量子算法后,立刻引起全世界科学界的轰动,量子计算机的研究热潮自此到来。量子计算机的运行方式以及存储计算方式,都与经典计算机存在着很大不同。经典计算机的存储…

.NET 现代化动态 LINQ 库 Gridify

动态 LINQ大家好,我是等天黑, 这次继续介绍开源项目,Gridify 是一个现代化动态 LINQ 库,它以最简单的方式将您的字符串转换为 LINQ 查询,并且有出色的性能。它还提供了一种使用基于文本的数据应用过滤、排序和分页的简单方法&…