安装.NET SDK
它包含了编译器、运行时、库和命令行工具(如 dotnet)。
推荐:前往 .NET 官网 下载并安装最新版 .NET SDK。
验证安装是否成功:
dotnet --version
进入想要创建项目的文件夹,打开终端
输入以下命令创建项目
# 创建一个控制台应用程序项目(最常用)
dotnet new console -n xxx # xxx为你项目的名称
进入项目文件夹并使用vdcode打开项目
cd xxx
code .
项目结构示例(dotnet new console 生成)
MyCSharpApp/
├── MyCSharpApp.csproj ← 项目文件(关键!)
├── Program.cs ← 主程序文件
└── obj/ ← 自动生成
你可以在 Program.cs 中编写代码,也可以右键项目文件夹 → “新建文件” 添加新的 .cs 文件(如 Rectangle.cs),它们都会被自动包含在项目中。
运行你的 C# 程序
在 VS Code 中:
-
按
F5启动调试(需已生成launch.json) -
或在终端运行:
dotnet run
当你在终端中运行 dotnet run 命令时,.NET SDK 会执行一系列步骤来编译并运行你的 .NET 应用程序。以下是完整的程序运行流程(以 .NET 6 及以上版本为例):
1. 解析命令行参数
dotnet run会读取当前目录下的项目文件(.csproj),如果没有指定项目,则默认使用当前目录中唯一的.csproj文件。- 如果有多个项目,你需要通过
-p或--project参数指定要运行的项目。 - 其他参数如
--configuration(如 Debug/Release)、--framework、--launch-profile等也会被解析。
2. 还原依赖(Restore)
- 如果项目尚未还原(即没有
obj/project.assets.json文件),dotnet run会自动调用dotnet restore。 - 这一步会从 NuGet 源下载项目所需的包,并生成依赖图。
注意:如果已经还原过且项目未更改,这一步会被跳过以提高效率。
3. 编译项目(Build)
dotnet run会调用dotnet build来编译项目。- 编译过程包括:
- C# 源代码 → 中间语言(IL)→ 生成程序集(
.dll文件) - 输出通常位于
bin/Debug/netX.X/或bin/Release/netX.X/目录下(取决于配置)
- C# 源代码 → 中间语言(IL)→ 生成程序集(
- 编译器还会处理:
- 源生成器(Source Generators)
- 分析器(Analyzers)
- 编译前/后事件(如果有)
4. 启动应用程序
-
编译成功后,
dotnet run会启动 .NET 运行时(通常是dotnet exec)来执行生成的程序集(.dll)。 -
实际执行命令类似于:
dotnet exec bin/Debug/net8.0/MyApp.dll [args...] -
如果是可执行项目(如控制台应用、ASP.NET Core 应用),入口点是
Main方法。 -
如果是库项目(Class Library),则无法直接运行(会报错)。
5. 传递参数
dotnet run -- --name Alice --port 5000
这些参数会被传给你的
Main(string[] args)
补充说明
- 开发便利性:
dotnet run是为开发阶段设计的,它自动处理还原和构建,适合快速迭代。 - 生产环境:不应使用
dotnet run部署应用。应使用dotnet publish生成发布版本,然后运行dotnet MyApp.dll。 - 性能:由于每次都会检查是否需要重新编译,
dotnet run比直接运行.dll稍慢。
示例流程(简化版)
$ dotnet run
# → 自动 restore(如需)
# → 自动 build(如需)
# → 执行 bin/Debug/net8.0/MyApp.dll
# → 输出程序结果
如果你使用的是 顶层语句(Top-level statements)(.NET 6+ 默认模板),那么入口点就是 Program.cs 中的顶层代码,无需显式定义 Main 方法。
评论区 0