当前位置: 首页 > news >正文

如何用 VS Code + C# Dev Kit 创建类库项目并在主项目中引用它?

如何用 VS Code + C# Dev Kit 创建类库项目并在主项目中引用它?

1. 准备工作

确保已安装:

  • C# Dev Kit扩展
  • .NET SDK(运行dotnet --version确认)

2. 创建解决方案和项目

方式一:使用命令行创建

# 1. 创建解决方案目录mkdirMySolutioncdMySolution# 2. 创建解决方案dotnet new sln -n MySolution# 3. 创建控制台主项目dotnet new console -n ConsoleApp# 4. 创建类库项目dotnet new classlib -n ClassLibrary# 5. 将项目添加到解决方案dotnet slnaddConsoleApp/ConsoleApp.csproj dotnet slnaddClassLibrary/ClassLibrary.csproj# 6. 添加项目引用dotnetaddConsoleApp/ConsoleApp.csproj reference ClassLibrary/ClassLibrary.csproj

方式二:使用 VS Code GUI 创建

  1. 打开命令面板(Ctrl+Shift+P)

  2. 创建解决方案

    .NET: Create New Solution
  3. 选择项目模板

    • 先选择 “Console Application”
    • 命名项目为ConsoleApp
  4. 再添加类库项目

    • 右键解决方案 → “Add New Project”
    • 选择 “Class Library”
    • 命名项目为ClassLibrary

3. 项目结构

完成后目录结构应如下:

MySolution/ ├── MySolution.sln ├── ConsoleApp/ │ ├── ConsoleApp.csproj │ ├── Program.cs │ └── ... └── ClassLibrary/ ├── ClassLibrary.csproj ├── Class1.cs └── ...

4. 配置项目引用

如果使用命令行已添加引用,跳过此步

如果需要在 GUI 中添加引用:

  1. 打开解决方案视图(左侧边栏)
  2. 右键 ConsoleApp 项目→ “Add Project Reference”
  3. 勾选 ClassLibrary 项目

或者在ConsoleApp.csproj中手动添加:

<ItemGroup><ProjectReferenceInclude="../ClassLibrary/ClassLibrary.csproj"/></ItemGroup>

5. 编写代码示例

ClassLibrary/Class1.cs

namespaceClassLibrary{publicclassCalculator{publicintAdd(inta,intb)=>a+b;publicintMultiply(inta,intb)=>a*b;}}

ConsoleApp/Program.cs

usingClassLibrary;varcalculator=newCalculator();Console.WriteLine($"3 + 5 ={calculator.Add(3,5)}");Console.WriteLine($"3 * 5 ={calculator.Multiply(3,5)}");

6. 构建和运行

方法一:使用 VS Code

  1. F5直接运行(已配置好调试)
  2. 或使用命令面板执行.NET: Run Project

方法二:使用命令行

cdConsoleApp dotnet run

7. 调试配置

VS Code 会自动生成.vscode/launch.json,配置类似:

{"configurations":[{"name":".NET Core Launch (console)","type":"coreclr","request":"launch","preLaunchTask":"build","program":"${workspaceFolder}/ConsoleApp/bin/Debug/net8.0/ConsoleApp.dll","args":[],"cwd":"${workspaceFolder}/ConsoleApp"}]}

常见问题解决

  1. 找不到命名空间

    • 确保类库是public访问级别
    • 重新构建:dotnet build
  2. 项目引用未生效

    # 清理并重新构建dotnet clean dotnet build
  3. VS Code 未检测到更改

    • 重启 VS Code
    • 重新加载窗口 (Ctrl+Shift+P → “Developer: Reload Window”)

建议的工作流程

  1. 始终从解决方案根目录打开

    code MySolution
  2. 使用解决方案视图管理项目

    • 添加/移除项目
    • 管理项目引用
    • 查看项目依赖
  3. 利用 C# Dev Kit 功能

    • 测试资源管理器:运行单元测试
    • 依赖关系图:可视化项目依赖
    • IntelliCode:AI 辅助编码

这样你就有了一个完整的工作环境,可以在类库中编写共享代码,在控制台程序中使用它。

http://www.jsqmd.com/news/84345/

相关文章:

  • ABC331D Tile Pattern
  • js之事件系统
  • 第二章-依赖属性
  • 量子计算驱动的分布式云存储系统在数据安全与高效检索中的创新应用 - 教程
  • css3如何引入外部字体
  • ARM 架构中的数据内存屏障指令 DMB
  • 【视频导图大师】3秒批量导出视频所有画面为高清图片/序列帧/视频截图/视频转图片
  • test tagstest tags - itnews
  • 终极指南:解锁Quansheng对讲机隐藏功能的完整方案
  • 终极指南:CinoLib——免费开源的通用网格处理神器
  • test tags2 - itnews
  • 光隔离探头
  • 窗口相关操作的总结
  • TileLang终极指南:45分钟内打造你的首个高性能GPU算子
  • 5分钟掌握Transition.css:让你的网页动起来
  • AI大模型之Agent,RAG,LangChain(二)
  • 技术周报 | 特朗普签令统一AI监管;长三角启动应用征集;多场开发者大会本周密集召开
  • 恢复条码至compvalue里
  • 北京陪诊服务权威推荐榜单 - 品牌排行榜单
  • HNOI2019《序列》
  • 峰值检测电路
  • 基于Java的安全生产投诉智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • 【Godot】【入门】Godot 是什么?适合做哪些类型的游戏(附路线图+避坑清单)
  • 北京上门收画服务权威推荐榜单​ - 品牌排行榜单
  • 从零到一:构建一个实时语音翻译应用(Vue3 + Web Speech API)
  • 前端性能与监控指标采集系统设计方案
  • PWA资产生成器终极教程:5分钟快速创建专业级图标和启动画面
  • 基于PyTorch的深度学习基础课程之十:损失函数
  • 学习Linux要注意的地方
  • 43、Python 并发与网络编程全解析