VSCode搭建 .netcore 开发环境

news2024/11/15 15:34:50

一、MacOS

笔者笔记本电脑上安装的是macOS High Sierra(10.13),想要尝试一下新版本的.netcore,之前系统是10.12时,.netcore 3.1刚出来时安装过3.1版本,很久没更新了,最近.net8出来了,想试一下,但是需要更新系统,于是安装了.netcore7,它的支持时间到2024年5月14日。

下载了.netcore7后,直接双击安装即可。安装后的路径为:/usr/local/share/dotnet

笔者VSCode的版本为1.85.1,需要安装C#插件,目前最新版本为2.14.8,但macOS 10.13目前最高只能安装v1.26.0版本的C#插件,不能安装更高的版本,否则不能调试。

在这里插入图片描述

另外还需要安装一个.NET Install Tool插件:

在这里插入图片描述
这样就可以在终端使用dotnet命令创建项目了,比如创建一个控制台应用:

$ dotnet new console
已成功创建模板“控制台应用”。

正在处理创建后操作...
正在还原 /Users/witton/Projects/cc/cc.csproj:
  正在确定要还原的项目…
  已还原 /Users/witton/Projects/cc/cc.csproj (用时 120 ms)。
已成功还原。

此时打开生成的Program.cs,并打上断点,切换到运行和调试工具栏,执行Generate C# Assets for Build and Debug,插件会自动生成launch.jsontasks.json两个文件:

在这里插入图片描述
launch.json

{
	"version": "0.2.0",
	"configurations": [
		{
			// Use IntelliSense to find out which attributes exist for C# debugging
			// Use hover for the description of the existing attributes
			// For further information visit https://github.com/dotnet/vscode-csharp/blob/main/debugger-launchjson.md
			"name": ".NET Core Launch (console)",
			"type": "coreclr",
			"request": "launch",
			"preLaunchTask": "build",
			// If you have changed target frameworks, make sure to update the program path.
			"program": "${workspaceFolder}/bin/Debug/net7.0/cc.dll",
			"args": [],
			"cwd": "${workspaceFolder}",
			// For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
			"console": "internalConsole",
			"stopAtEntry": false
		},
		{
			"name": ".NET Core Attach",
			"type": "coreclr",
			"request": "attach"
		}
	]
}

tasks.json:

{
	"version": "2.0.0",
	"tasks": [
		{
			"label": "build",
			"command": "dotnet",
			"type": "process",
			"args": [
				"build",
				"${workspaceFolder}/cc.csproj",
				"/property:GenerateFullPaths=true",
				"/consoleloggerparameters:NoSummary"
			],
			"problemMatcher": "$msCompile"
		},
		{
			"label": "publish",
			"command": "dotnet",
			"type": "process",
			"args": [
				"publish",
				"${workspaceFolder}/cc.csproj",
				"/property:GenerateFullPaths=true",
				"/consoleloggerparameters:NoSummary"
			],
			"problemMatcher": "$msCompile"
		},
		{
			"label": "watch",
			"command": "dotnet",
			"type": "process",
			"args": [
				"watch",
				"run",
				"--project",
				"${workspaceFolder}/cc.csproj"
			],
			"problemMatcher": "$msCompile"
		}
	]
}

此时按F5运行启动调试即可开始调试C#程序:

在这里插入图片描述
微软开发了一个新的插件C# Dev Kit,它提供了更加强大的功能,并且可以像VS那样使用解决方案资源管理器来管理项目。该插件需要C#插件为2.0及以上版本,但由于笔者的MacOS系统比较老了,C#插件2.0及以上版本不能进行调试,所以只能使用1.X来将就使用了。

如果是macOS 10.15及以上版本,就可以直接安装.net8了,VSCode插件也可以直接安装C# Dev Kit以及IntelliCode for C# Dev Kit插件了。但是由于.NET Install Tool插件目前仅支持7.x版本的.net,所以还需要安装.net 7runtime:runtime-7.0.14-macos-x64-installer

安装好后就可以使用F1调出.NET:新建项目...命令,来新建.net项目了:

在这里插入图片描述

选择项目模板:

在这里插入图片描述

比如选择控制台应用,创建好项目后,可以看到解决方案资源管理器

在这里插入图片描述

二、Windows

如果是Windows10,则可以直接安装最新的.net 8,并且安装上C# Dev Kit以及IntelliCode for C# Dev Kit,也不需要像macOS那样还需要安装.net 7runtime

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

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

相关文章

3DGS学习笔记(3D Gaussian Splatting)

3DGS学习笔记(3D Gaussian Splatting) 相关资料收集 理论推导与理解 剪月光者:《3D Gaussian Splatting for Real-Time Radiance Field Rendering》3D高斯的理论理解 Splating简介 bo233:Splatting 抛雪球法简介 论文讲解 …

Hive 的 安装与部署

目录 1 安装 MySql2 安装 Hive3 Hive 元数据配置到 MySql4 启动 Hive Hive 官网 1 安装 MySql 为什么需要安装 MySql? 原因在于Hive 默认使用的元数据库为 derby,开启 Hive 之后就会占用元数据库,且不与其他客户端共享数据,如果想多窗口操作…

C++常用库函数大小写转换

在我们在编写代码时大小写转换是基础知识,这篇博客将通过介绍C常用库函数来回顾和学习一种不一样的大小写转换 目录 一、islower/isupper函数二、tolower/toupper函数三、ASCLL码 一、islower/isupper函数 islower和isupper函数是C标准库中的字符分类函数&#xff…

[Kubernetes]5. k8s集群StatefulSet详解,以及数据持久化(SC PV PVC)

前面通过deployment结合service来部署无状态的应用,下面来讲解通过satefulSet结合service来部署有状态的应用 一.StatefulSet详解 1.有状态和无状态区别 无状态: 无状态(stateless)、牲畜(cattle)、无名(nameless)、可丢弃(disposable) 有状态: 有状态(stateful)、宠物(pet)…

万界星空科技低代码平台基本模块与优势

低代码平台(Low-Code Development Platform,LCDP)就是使用低代码的方式进行开发,能快速设置和部署的平台。低代码平台旨在简化应用开发过程,降低开发难度,缩短开发周期,并使非专业程序员&#x…

【日常记录】自动化部署与持续交付:GitHub Actions CICD

文章目录 1.背景2.具体流程2.1 在自己的项目2.2 设置GitHub token2.3 配置 workflows2.4 配置服务器SSH2.5 配置 repository secret2.6 服务器安装宝塔2.7 搭建网站 备注不知道怎么处理的一个错误 1.背景 当我们做项目的时候,如果做完了,要发布&#xff…

C#如何将本地文件上传至阿里云OSS中

要想将文件上传至OSS,那么阿里云的AccessKeyId和AccessKeySecret必不可少 一.去哪找AccessKeyId和AccessKeySecret 进入阿里云工作台,点击右上角头像,选择AccessKey管理,就能看到ID了 但是Secret目前阿里云不支持查看了&#xf…

DVWA-Hight-xss漏洞

首先来到DVWA高级模式下反射型xss漏洞处 开始测试 <script>alert(/xss/)</script> 发现直接使用js代码不行&#xff0c;被直接过滤稍微试探针对的过滤对象 发现这里针对 <script>标签会直接过滤 我们改用<img>标签试探是否过滤 发现这里针对img标签没…

ARM Cortex-Mx 权威指南笔记—SysTick定时器

前言 通过本次学习你可以学到&#xff1a; 1、什么是SysTick定时器&#xff1f; 2、Systick定时器的操作。 3、如何使用Systick定时器。 正文内容参考 ARM Cortex-Mx 权威指南笔记 9.5小节。 什么是Systick定时器 SysTick定时器是Cortex-M处理器内部集成的名为系统节拍定时…

【FPGA】分享一些FPGA数字信号处理相关的书籍

在做FPGA工程师的这些年&#xff0c;买过好多书&#xff0c;也看过好多书&#xff0c;分享一下。 后续会慢慢的补充书评。 【FPGA】分享一些FPGA入门学习的书籍【FPGA】分享一些FPGA协同MATLAB开发的书籍 【FPGA】分享一些FPGA视频图像处理相关的书籍 【FPGA】分享一些FPGA高速…

【Linux Shell】10. 函数

文章目录 【 1. 函数的定义 】【 2. 函数参数 】 【 1. 函数的定义 】 所有函数在使用前必须定义 。这意味着必须将函数放在脚本开始部分&#xff0c;直至shell解释器首次发现它时&#xff0c;才可以使用。 调用函数仅使用其函数名即可 。 函数返回值在调用该函数后通过 $? 来…

《罗素论教育》笔记

目录 全书架构 书简介 经典摘录 一、教育的理想 教育的基本原理 教育的目的 二、品性的教育 一岁前的教育 主要是2岁到6岁的教育 三、智力教育 14岁前的课程安排 最后的学年 大学教育 四、结束语 全书架构 书简介 经典摘录 一、教育的理想 教育的基本原理 1、我…

Mysql大数据量下流式查询优化:Jdbc中的useFetchSize参数及其原理解析

前言 最近我朋友公司有个需求场景&#xff1a;查询千万级数据量并写入txt文件的程序优化需求。 朋友找到我对程序进行优化&#xff0c; 不然饭碗不保......&#x1f4a6; 下面就分享一下解决这个优化问题的过程和思路&#xff0c;并总结一下&#xff0c;在以后不要在踩同样的坑…

滴水逆向1

八进制加法乘法表 EF11101111 j记住其映射关系 十进制的定义&#xff1a;由十个符号组成&#xff0c;分别是0 1 2 3 4 5 6 7 8 9 逢十进一。九进制的定义&#xff1a;由九个符号组成&#xff0c;分别是0 1 2 3 4 5 6 7 8 逢九进一。十六进制的定义&#xff1a;由十六个符号组成…

C++ 对象模型 | 关于对象

一、C 对象模型 1、对象内存布局 在C中&#xff0c;有两种数据成员&#xff1a;static和nonstatic&#xff0c;以及三种成员方法static、nonstatic、virtual&#xff0c;下面从虚函数、非虚函数、静态成员变量、非静态成员变量等维度来分析&#xff0c;类对象的内存布局。例如…

苍穹外卖Day01——总结1

总结1 1. 软件开发整体介绍1.1 软件开发流程1.2 角色分工1.3 软件环境 2. 苍穹外卖项目介绍2.1 项目介绍2.2 技术选项 3. Swagger4. 补充内容&#xff08;待解决...&#xff09; 1. 软件开发整体介绍 1.1 软件开发流程 1.2 角色分工 从角色分工里面就可以查看自己以后从事哪一…

lv14 IO模型:阻塞和非阻塞 7

1 五种IO模型------读写外设数据的方式 阻塞: 不能操作就睡觉 非阻塞&#xff1a;不能操作就返回错误(通过轮询即才能实现阻塞的情况 &#xff09; 多路复用&#xff1a;委托中介监控 信号驱动&#xff1a;让内核如果能操作时发信号&#xff0c;在信号处理函数中操作 异步IO&a…

视频AI智剪方法:快速批量处理视频,批量剪辑视频的操作

随着科技的飞速发展&#xff0c;视频内容已是获取信息和娱乐的主要方式之一。对于视频创作者和内容生产者来说&#xff0c;如何快速、高效地处理和剪辑大量视频已成为一项重要的需求。现在借助AI技术的不断发展&#xff0c;可以更加智能、高效的处理视频。下面来看云炫AI智剪如…

kubernetes入门到进阶(5)

目录 镜像仓库&#xff1a;怎么用好docker hub这个宝藏 什么是镜像仓库&#xff08;Registry&#xff09; 什么是docker hub 如何在docker hub上挑选镜像 docker hub上进行概念股命名规则是什么 该怎么上传自己的镜像 离线环境该怎么办 小结 镜像仓库&#xff1a;怎么用好docke…

《BackTrader量化交易图解》第8章:plot 绘制金融图

文章目录 8. plot 绘制金融图8.1 金融分析曲线8.2 多曲线金融指标8.3 Observers 观测子模块8.4 plot 绘图函数的常用参数8.5 买卖点符号和色彩风格8.6 vol 成交参数8.7 多图拼接模式8.8 绘制 HA 平均 K 线图 8. plot 绘制金融图 8.1 金融分析曲线 BackTrader内置的plot绘图函…