当前位置:   article > 正文

[C# SDK/IDE]-VSCode 搭建 C# 开发环境_vscode c#

vscode c#

活动地址:毕业季·进击的技术er

夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始,CSDN诚邀各毕业生/在校生/职场人讲述自己的毕业季故事,分享自己的经验,技术er的进击之路,等你来书写!我是从自身经历出发,分享自己的经验。

在技术学习过程中遇到的最大问题是?如何解决的?

  1. 最近准备写 C# 的笔记总结专栏 bug 笔记本硬盘空间实在是不够用了
  2. 根本没有办法再安装一个 Visual Studio 集成开发环境了!!!
  3. 在学 Java 的过程中基本都是用记事本和命令提示符……再也不想经历了
  4. 终于让我想起来大名鼎鼎的 Visual Studio Code 编辑器!
  5. 这玩意儿不仅小巧 还是跨平台的 WIndows Linux 都能用
  6. 但是 Visual Studio Code 安装完毕也真的就是一个编辑器……除了敲代码什么都不能干
  7. 这就需要配置了 不然只能写 C# 代码而不能编译运行 C# 程序我还不如用记事本 cmd 的呢!!!
  8. 在一下午的摸索下终于是让我摸索出来如何配置 Visual Studio Code 了~开心!

##################################################

目录

获取安装 Visual Studio Code 汉化及插件配置

获取 VSCode

安装 VSCode

安装中文包插件

关闭自动更新

安装解决方案管理器插件

安装 C# 扩展插件

官网下载安装 .NET Code SDK

官网获取安装包

安装 SDK

初识 .NET SDK 的一些命令

基本 C# 程序编译和运行

命令行单独利用 SDK 命令初始化工作空间并编译运行 C# 程序

在 VSCode 中搭配 SDK 编译运行 C# 程序

安装配置 Code Runner 插件更方便地编译运行

好人呐呐

本节所有资源


##################################################

获取安装 Visual Studio Code 汉化及插件配置

——————————

获取 VSCode

        官方主页:

Visual Studio Code - Code Editing. RedefinedVisual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.https://code.visualstudio.com/icon-default.png?t=N7T8https://code.visualstudio.com/

        主页如下:

主页

——————————

安装 VSCode

        以普通用户身份运行安装包即可:

普通用户

        默认安装位置为

C:\Users\用户\AppData\Local\Programs\Microsoft VS Code
C:\Users\byme\AppData\Local\Programs\Microsoft VS Code
C:\Users\byme\AppData\Local\Programs\Microsoft VS Code

        开始菜单文件夹默认即可:

默认

        附加任务也是默认:

默认

        这是我的安装配置:

  1. 目标位置:
  2. C:\Users\byme\AppData\Local\Programs\Microsoft VS Code
  3. 开始菜单文件夹:
  4. Visual Studio Code
  5. 附加任务:
  6. 附加快捷方式:
  7. 创建桌面快捷方式(D)
  8. 其他:
  9. 将“通过 Code 打开”操作添加到 Windows 资源管理器文件上下文菜单
  10. 将“通过 Code 打开”操作添加到 Windows 资源管理器目录上下文菜单
  11. 将 Code 注册为受支持的文件类型的编辑器
  12. 添加到 PATH (重启后生效)

安装配置

        开始安装

开始安装

开始安装

开始安装

        安装完毕首次运行:

首次运行

        先自动提醒我们装上一个中文包:

中文包

        重启程序之后:

重启程序

——————————

安装中文包插件

        默认是英文 如果没有提示你需要安装中文的话可以选择手动安装

        快捷键

Ctrl Shift x

        搜索中文包

Chinese

        下载安装完毕后

        快捷键

Ctrl Shift p

        输入

configure language

        就可以配置显示语言了:

configure language

        这边下载安装的是中文简体 zh-cn

中文简体 zh-cn

        当然你也可以在 configure language 看到配置特定语言的首选项

配置特定语言的首选项

        配置单一语言的 我们就不说了

配置特定语言的首选项

——————————

关闭自动更新

关闭自动更新

——————————

安装解决方案管理器插件

        快捷键

Ctrl Shift x

Ctrl Shift x

        搜索安装该插件:

vscode-solution-explorer

vscode-solution-explorer

vscode-solution-explorer

vscode-solution-explorer

安装完毕

        安装完毕之后重启程序:

重启之后

——————————

安装 C# 扩展插件

        安装 C# 语言的插件:

@id:ms-dotnettools.csharp

@id:ms-dotnettools.csharp

@id:ms-dotnettools.csharp

@id:ms-dotnettools.csharp

        但是上面这个报错我是没看懂啊 其她都好

##################################################

官网下载安装 .NET Code SDK

——————————

官网获取安装包

        官网下载主页

下载适用于 Visual Studio Code 的 .NET SDK下载并安装 .NET 软件开发工具包(SDK),从而在 Linux、macOS 或 Windows 上使用 Visual Studio Code 生成 .NET 应用。https://dotnet.microsoft.com/zh-cn/download/dotnet/sdk-for-vs-code?utm_source=vs-code&utm_medium=referral&utm_campaign=sdk-installicon-default.png?t=N7T8https://dotnet.microsoft.com/zh-cn/download/dotnet/sdk-for-vs-code?utm_source=vs-code&utm_medium=referral&utm_campaign=sdk-install

适用于 Visual Studio Code 的 .NET SDK
适用于 Visual Studio Code 的 .NET SDK

——————————

安装 SDK

        这边我安装 64 位的:

安装 .NET Code SDK

安装 .NET Code SDK

安装 .NET Code SDK

安装 .NET Code SDK

安装 .NET Code SDK

安装 .NET Code SDK

  1. 已成功安装。
  2. 下列项安装于: ""
  3. • .NET SDK 6.0.301
  4. • .NET Runtime 6.0.6
  5. • ASP.NET Core Runtime 6.0.6
  6. • .NET Windows Desktop Runtime 6.0.6
  7. 此产品会收集用法数据
  8. • 详细信息和选择退出选项: https://aka.ms/dotnet-cli-telemetry
  9. 资源
  10. • .NET 文档: https://aka.ms/dotnet-docs
  11. • SDK 文档: https://aka.ms/dotnet-sdk-docs
  12. • 发行说明: https://aka.ms/dotnet6-release-notes
  13. • 教程: https://aka.ms/dotnet-tutorials

        安装完成之后管理员权限运行 cmd 输入

dotnet --version

        如果输出版本号就是安装成功!

  1. Microsoft Windows [版本 6.3.9600]
  2. (c) 2013 Microsoft Corporation。保留所有权利。
  3. C:\Windows\system32>dotnet --version
  4. 6.0.301
  5. C:\Windows\system32>

dotnet --version

——————————

初识 .NET SDK 的一些命令

        查看帮助文档:

  1. C:\Windows\system32>dotnet -h
  2. 使用情况: dotnet [runtime-options] [path-to-application] [arguments]
  3. 执行 .NET 应用程序。
  4. runtime-options:
  5. --additionalprobingpath <path> 要探测的包含探测策略和程序集的路径。
  6. --additional-deps <path> 指向其他 deps.json 文件的路径。
  7. --depsfile 指向 <application>.deps.json 文件的路径。
  8. --fx-version <version> 要用于运行应用程序的安装版共享框架的版本。
  9. --roll-forward <setting> 前滚至框架版本(LatestPatch, Minor, LatestMino
  10. r, Major, LatestMajor, Disable)。
  11. --runtimeconfig 指向 <application>.runtimeconfig.json 文件的
  12. 路径。
  13. path-to-application:
  14. 要执行的应用程序 .dll 文件的路径。
  15. 使用情况: dotnet [sdk-options] [command] [command-options] [arguments]
  16. 执行 .NET SDK 命令。
  17. sdk-options:
  18. -d|--diagnostics 启用诊断输出。
  19. -h|--help 显示命令行帮助。
  20. --info 显示 .NET 信息。
  21. --list-runtimes 显示安装的运行时。
  22. --list-sdks 显示安装的 SDK。
  23. --version 显示使用中的 .NET SDK 版本。
  24. SDK 命令:
  25. add 将包或引用添加到 .NET 项目。
  26. build 生成 .NET 项目。
  27. build-server 与由生成版本启动的服务器进行交互。
  28. clean 清理 .NET 项目的生成输出。
  29. format 将样式首选项应用到项目或解决方案。
  30. help 显示命令行帮助。
  31. list 列出 .NET 项目的项目引用。
  32. msbuild 运行 Microsoft 生成引擎(MSBuild)命令。
  33. new 创建新的 .NET 项目或文件。
  34. nuget 提供其他 NuGet 命令。
  35. pack 创建 NuGet 包。
  36. publish 发布 .NET 项目进行部署。
  37. remove 从 .NET 项目中删除包或引用。
  38. restore 还原 .NET 项目中指定的依赖项。
  39. run 生成并运行 .NET 项目输出。
  40. sdk 管理 .NET SDK 安装。
  41. sln 修改 Visual Studio 解决方案文件。
  42. store 在运行时包存储中存储指定的程序集。
  43. test 使用 .NET 项目中指定的测试运行程序运行单元测试。
  44. tool 安装或管理扩展 .NET 体验的工具。
  45. vstest 运行 Microsoft 测试引擎(VSTest)命令。
  46. workload 管理可选工作负荷。
  47. 捆绑工具中的其他命令:
  48. dev-certs 创建和管理开发证书。
  49. fsi 启动 F# 交互/执行 F# 脚本。
  50. sql-cache SQL Server 缓存命令行工具。
  51. user-secrets 管理开发用户密码。
  52. watch 启动文件观察程序,它会在文件发生更改时运行命令。
  53. 运行 "dotnet [command] --help",获取有关命令的详细信息。
  54. C:\Windows\system32>

        .NET SDK 是一组库和工具

        开发人员可用其创建 .NET 应用程序和库

        包含以下用于构建和运行应用程序的组件:

.NET CLI

.NET 运行时和库

dotnetdotnet

        这边我们主要查看新建命令:

  1. C:\Windows\system32>dotnet new -h
  2. Usage: new [options]
  3. Options:
  4. -h, --help 显示此命令的帮助。
  5. -l, --list <PARTIAL_NAME> 列出包含指定模板名称的模板。如果未指定任何名称
  6. ,则列出所有模板。
  7. -n, --name 正在创建的输出名称。如未指定名称,则使用输出目
  8. 录的名称。
  9. -o, --output 要放置生成的输出的位置。
  10. -i, --install 安装源或模板包。
  11. -u, --uninstall 卸载源或模板包。
  12. --interactive 允许内部 dotnet restore 命令以停止和等待用户输
  13. 入或操作(例如完成身份验证)。
  14. --add-source, --nuget-source 指定安装期间将使用的 NuGet 源。
  15. --type 根据可用类型筛选模板。预定义值为“项目”和“项
  16. ”。
  17. --dry-run 如果运行给定命令行将导致模板创建,则显示将发生
  18. 情况的摘要。
  19. --force 强制生成内容,即使它会更改现有文件。如果与 --in
  20. stall 选项一起使用,则允许从指定的源安装模板包,即使它们将替代另一个源中的模板包
  21. -lang, --language 根据语言筛选模板,并指定要创建的模板的语言。
  22. --update-check 检查当前安装的模板包以获取更新。
  23. --update-apply 检查当前安装的模板包以获取更新,然后安装更新。
  24. --search <PARTIAL_NAME> 在 NuGet.org 上搜索模板。
  25. --author <AUTHOR> 根据模板作者筛选模板。仅适用于 --搜索 或 --列出
  26. | -l 选项。
  27. --package <PACKAGE> 筛选基于 NuGet 包 ID 的模板。应用于 --搜索。
  28. --columns <COLUMNS_LIST> 要在 --列出 和 --搜索 输出中显示的以逗号分隔的
  29. 列的列表。
  30. 支持的列为: 语言、标记、作者和类型。
  31. --columns-all 在 --列出 和 --搜索 中显示所有列。
  32. --tag <TAG> 根据标记筛选模板。应用于 --搜索 和 --列出。
  33. --no-update-check 在实例化模板时,禁用对模板包更新的检查。
  34. C:\Windows\system32>

        我们可以新建的有这些:

  1. C:\Windows\system32>dotnet new -l
  2. 这些模板已匹配你的输入:
  3. 模板名 短名称 语言 标记
  4. ------------------ ------------------- ---------- --------------------------
  5. ASP.NET Core Empty web [C#],F# Web/Empty
  6. ASP.NET Core gR... grpc [C#] Web/gRPC
  7. ASP.NET Core We... webapi [C#],F# Web/WebAPI
  8. ASP.NET Core We... webapp,razor [C#] Web/MVC/Razor Pages
  9. ASP.NET Core We... mvc [C#],F# Web/MVC
  10. ASP.NET Core wi... angular [C#] Web/MVC/SPA
  11. ASP.NET Core wi... react [C#] Web/MVC/SPA
  12. Blazor Server App blazorserver [C#] Web/Blazor
  13. Blazor WebAssem... blazorwasm [C#] Web/Blazor/WebAssembly/PWA
  14. dotnet gitignor... gitignore Config
  15. Dotnet 本地工具... tool-manifest Config
  16. EditorConfig 文件 editorconfig Config
  17. global.json file globaljson Config
  18. MSTest Test Pro... mstest [C#],F#,VB Test/MSTest
  19. MVC ViewImports viewimports [C#] Web/ASP.NET
  20. MVC ViewStart viewstart [C#] Web/ASP.NET
  21. NuGet 配置 nugetconfig Config
  22. NUnit 3 Test Item nunit-test [C#],F#,VB Test/NUnit
  23. NUnit 3 Test Pr... nunit [C#],F#,VB Test/NUnit
  24. Protocol Buffer... proto Web/gRPC
  25. Razor Class Lib... razorclasslib [C#] Web/Razor/Library
  26. Razor Component razorcomponent [C#] Web/ASP.NET
  27. Razor Page page [C#] Web/ASP.NET
  28. Web 配置 webconfig Config
  29. Windows 窗体控件库 winformscontrollib [C#],VB Common/WinForms
  30. Windows 窗体类库 winformslib [C#],VB Common/WinForms
  31. Windows 窗体应用 winforms [C#],VB Common/WinForms
  32. Worker Service worker [C#],F# Common/Worker/Web
  33. WPF 类库 wpflib [C#],VB Common/WPF
  34. WPF 应用程序 wpf [C#],VB Common/WPF
  35. WPF 用户控件库 wpfusercontrollib [C#],VB Common/WPF
  36. WPF 自定义控件库 wpfcustomcontrollib [C#],VB Common/WPF
  37. xUnit Test Project xunit [C#],F#,VB Test/xUnit
  38. 解决方案文件 sln Solution
  39. 控制台应用 console [C#],F#,VB Common/Console
  40. 类库 classlib [C#],F#,VB Common/Library
  41. C:\Windows\system32>

        我们只需要输入第二列的简写名称就可以创建对应的模板

        按照模板创建一个控制台项目:

  1. dotnet new console /* 创建到当前目录 */
  2. dotnet new console -o test /* 创建在当前目录中的 test 目录中 */

        之后我们如果安装了 VSCode 就可以使用该命令打开此项目:

code test    /* 在 VSCode 中打开 test 项目 */

##################################################

基本 C# 程序编译和运行

——————————

命令行单独利用 SDK 命令初始化工作空间并编译运行 C# 程序

        新建一个文件夹 这个就是我们的工作空间了!

        以后都要在这里存放项目 这里我设置的目录是

E:\C#

        进入该目录 在地址栏输入 cmd 后回车

地址栏输入

        打开当前目录的 cmd

打开当前目录的 cmd

        在当前目录创建工作空间:

dotnet new console    /* 创建控制台应用程序 */

        创建工作空间完毕:

dotnet new console

  1. Microsoft Windows [版本 6.3.9600]
  2. (c) 2013 Microsoft Corporation。保留所有权利。
  3. E:\C#>dotnet new console
  4. 已成功创建模板“控制台应用”。
  5. 正在处理创建后操作...
  6. 在 E:\C#\C#.csproj 上运行 “dotnet restore”...
  7. 正在确定要还原的项目…
  8. 已还原 E:\C#\C#.csproj (用时 228 ms)。
  9. 已成功还原。
  10. E:\C#>dir
  11. 驱动器 E 中的卷是 File
  12. 卷的序列号是 0008-8672
  13. E:\C# 的目录
  14. 2022/06/29 19:23 <DIR> .
  15. 2022/06/29 19:23 <DIR> ..
  16. 2022/06/29 19:22 288 C#.csproj
  17. 2022/06/29 19:23 <DIR> obj
  18. 2022/06/29 19:22 105 Program.cs
  19. 2 个文件 393 字节
  20. 3 个目录 25,124,012,032 可用字节
  21. E:\C#>

        初始化目录时创建的 Program.cs 是 SDK 为我们创建的 C# 源文件:

Program.cs

        是的你没有看错 C# 真的只需要一条输出语句就可以编译出一个程序:

  1. // See https://aka.ms/new-console-template for more information
  2. Console.WriteLine("Hello, World!");

        输入命令 dotnet run 编译运行:

编译命令

        编译出来的 .exe 存放在可执行程序在工作目录的

bin\Debug\net6.0

        该目录下的 .exe 就是编译出来的程序了:

编译的程序

        完全可以双击运行的!

——————————

在 VSCode 中搭配 SDK 编译运行 C# 程序

        cmd 中在当前工作目录启动 VSCode 的话可以输入命令:

code .

在当前目录启动 VSCode

        该命令相当于你右击空白处选择 VSCode 在当前目录启动:

启动 VSCode 在当前目录

         勾选我信任:

信任

        此时在左边看到 该 图标表示创建了一个项目: 

创建了一个项目

        若右下角弹出该询问务必选择 Yes !!!

Yes

        此时务必选择 Yes 然后发现左边列多出来一个隐藏目录:

Yes

        该 .cs 是系统自动为我们创建的 c# 源文件:

  1. // See https://aka.ms/new-console-template for more information
  2. Console.WriteLine("Hello, World!");

Program.cs

        调出一个终端:

调出一个终端

        输入命令后回车:

dotnet run

dotnet run

        等待几秒后程序会显示运行的结果:

  1. Windows PowerShell
  2. 版权所有 (C) 2014 Microsoft Corporation。保留所有权利。
  3. PS E:\C#> dotnet run
  4. Hello, World!
  5. PS E:\C#>

dotnet run

        这个编译运行的操作相当于你按下 Ctrl F5 快捷键:

Ctrl F5

Ctrl F5

——————————

安装配置 Code Runner 插件更方便地编译运行

        在扩展中搜索并安装该插件

Code Runner

Code Runner

Code Runner

Code Runner

        安装插件之后退出程序再重新启动 VSCode 程序

        点击左下角的设置图标  进入设置:

设置

设置

        搜索

run in terminal

run in terminal

        勾选 Run In Terminal 的

Whether to run code in Integrated Terminal.

勾选

        点击右上角的  图标打开设置源代码:

设置源代码

        原 settings.json 内容:

  1. {
  2. "update.showReleaseNotes": false,
  3. "update.enableWindowsBackgroundUpdates": false,
  4. "update.mode": "none",
  5. "code-runner.runInTerminal": true
  6. }

        最后一行代码添加英文逗号

        回车另起一行 输入 code 选择 code-runner.executorMap 后回车:

code-runner.executorMap

        直接帮你导入了几十行代码:

code-runner.executorMap

        找到 csharp 这一行:

csharp

        替换 csharp 命令 scriptcs 为:

cd $dir && dotnet run $fileName

cd $dir && dotnet run $fileName

        修改后内容:

  1. {
  2. "update.showReleaseNotes": false,
  3. "update.enableWindowsBackgroundUpdates": false,
  4. "update.mode": "none",
  5. "code-runner.runInTerminal": true,
  6. "code-runner.executorMap": {
  7. "javascript": "node",
  8. "java": "cd $dir && javac $fileName && java $fileNameWithoutExt",
  9. "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  10. "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  11. "objective-c": "cd $dir && gcc -framework Cocoa $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  12. "php": "php",
  13. "python": "python -u",
  14. "perl": "perl",
  15. "perl6": "perl6",
  16. "ruby": "ruby",
  17. "go": "go run",
  18. "lua": "lua",
  19. "groovy": "groovy",
  20. "powershell": "powershell -ExecutionPolicy ByPass -File",
  21. "bat": "cmd /c",
  22. "shellscript": "bash",
  23. "fsharp": "fsi",
  24. "csharp": "cd $dir && dotnet run $fileName",
  25. "vbscript": "cscript //Nologo",
  26. "typescript": "ts-node",
  27. "coffeescript": "coffee",
  28. "scala": "scala",
  29. "swift": "swift",
  30. "julia": "julia",
  31. "crystal": "crystal",
  32. "ocaml": "ocaml",
  33. "r": "Rscript",
  34. "applescript": "osascript",
  35. "clojure": "lein exec",
  36. "haxe": "haxe --cwd $dirWithoutTrailingSlash --run $fileNameWithoutExt",
  37. "rust": "cd $dir && rustc $fileName && $dir$fileNameWithoutExt",
  38. "racket": "racket",
  39. "scheme": "csi -script",
  40. "ahk": "autohotkey",
  41. "autoit": "autoit3",
  42. "dart": "dart",
  43. "pascal": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
  44. "d": "cd $dir && dmd $fileName && $dir$fileNameWithoutExt",
  45. "haskell": "runhaskell",
  46. "nim": "nim compile --verbosity:0 --hints:off --run",
  47. "lisp": "sbcl --script",
  48. "kit": "kitc --run",
  49. "v": "v run",
  50. "sass": "sass --style expanded",
  51. "scss": "scss --style expanded",
  52. "less": "cd $dir && lessc $fileName $fileNameWithoutExt.css",
  53. "FortranFreeForm": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  54. "fortran-modern": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  55. "fortran_fixed-form": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  56. "fortran": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
  57. "sml": "cd $dir && sml $fileName"
  58. }
  59. }

        Ctrl s 保存并返回代码界面 此时按下

Ctrl Alt n

         或者点击右上方的三角形图标  即可编译运行!

         正在编译:

正在编译

        运行成功:

运行成功

##################################################

好人呐呐

——————————

本节所有资源

  1. pan.baidu.com/s/1TfsyHVYqoUTNscDbP7axPQ
  2. 1025

活动地址:毕业季·进击的技术er

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/556983
推荐阅读
相关标签
  

闽ICP备14008679号