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

VS中解决方案和项目的区别

总目录


文章目录

  • 总目录
  • 一、概述
    • 1、解决方案
    • 2、项目
    • 3、项目文件
    • 4、解决方案文件夹
  • 二、图解
    • 1、图解解决方案和项目的关系
    • 2、图解sln文件
    • 3、图解项目文件
  • 结语


一、概述

1、解决方案

  • 解决方案是一个容器,通常包含多个项目,这些项目通常相互引用。 解决方案中的一些项目可能是类库,一些可能是可执行应用程序,一些可能是单元测试项目或网站。
  • 打开某个解决方案时,Visual Studio 会自动加载该解决方案包含的所有项目。

在这里插入图片描述

解决方案由格式唯一的文本文件(扩展名 .sln)描述;不应对其进行手动编辑。 相反,.suo 文件是隐藏文件,在默认的文件资源管理器设置下不会显示。 若要显示隐藏文件,请在文件资源管理器的“查看”菜单上选中“隐藏项”复选框。

2、项目

在 Visual Studio 中创建应用或网站时,从项目开始。 从逻辑上讲,项目包含所有编译为可执行文件、库或网站的文件。 这些文件可以包括源代码、图标、图像、数据文件等。 项目还包含编译器设置以及程序将与之通信的各种服务或组件需要的其他配置文件。

3、项目文件

Visual Studio 使用 MSBuild 生成解决方案中的每个项目,每个项目都包含一个 MSBuild 项目文件。 文件扩展名反映项目的类型(例如,C# 项目 (.csproj)、Visual Basic 项目 (.vbproj) 或数据库项目 (.dbproj))。 项目文件是一个 XML 文档,其中包含 MSBuild 生成项目所需的所有信息和说明。 此类信息和说明包括内容、平台要求、版本控制信息、Web 服务器或数据库服务器设置以及要执行的任务。

4、解决方案文件夹

“解决方案文件夹”是仅存在于“解决方案资源管理器”中的虚拟文件夹,你可以在其中使用它对解决方案中的项目进行分组。

二、图解

1、图解解决方案和项目的关系

在这里插入图片描述

当我们新建一个解决方案,然后分别创建解决方案文件夹 和项目的时候,我们发现解决方案文件夹是无法在 资源管理器中找到的,因为它是虚拟文件夹,便于开发人员对解决方案中的项目进行分组,不影响项目实际路径的。

2、图解sln文件

在这里插入图片描述

打开sln 文件,我们发现该文件中记录了解决方案的 解决方案文件夹 和项目 的组织关系

3、图解项目文件

在这里插入图片描述
在这里插入图片描述

ItemGroup标签下的 Reference 标签 记录的是项目的所用到的引用;HintPath 表示程序集的相对或绝对路径。
如:…\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll 就表示该程序集位于 项目根目录下的packages子目录下。

在这里插入图片描述


结语

以上就是本文的内容,希望以上内容可以帮助到您,如文中有不对之处,还请批评指正。


参考资料
Visual Studio 中的解决方案和项目有哪些?

http://www.lryc.cn/news/59540.html

相关文章:

  • MyBatis的parameterType传入参数类型和resultType返回结果类型
  • 什么是Android FrameWork,请你介绍一下?
  • 【SQL 必知必会】- 第十六课 更新和删除数据
  • 常见哈希算法及其应用
  • PHP快速入门02-PHP语言基础
  • FSCapture - 长截图工具
  • [ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系
  • 【算法LearnNO.1】算法介绍以及算法的时间复杂度和空间复杂度
  • 013:Mapbox GL添加marker
  • 智慧工厂可视化合集,推动行业数字化转型
  • 工作流调度系统 Azkaban介绍与安装(一)
  • 【Python基础入门学习】Python工具Pycharm的安装与使用
  • 【版本控制】Github同步Gitee镜像仓库自动化脚本
  • 索引的分类
  • 【整理九】
  • 钢网是SMT生产使用的一种工具,如何制作?
  • 如何创建自己的gym环境
  • 使用Marshaller 将Java对象转化为XML格式和字符串转为xml
  • NumPy 秘籍中文第二版:八、质量保证
  • [ 应急响应篇基础 ] 日志分析工具Log Parser配合login工具使用详解(附安装教程)
  • 什么是MVVM?
  • Java 企业电子招投标采购系统源码:采购过程更规范,更透明
  • 1384:珍珠(bead)
  • 34岁本科男,做了5年功能测试想转行,除了进厂还能干什么?
  • 一文理解Transformer整套流程
  • 04、SpringBoot运维实用篇
  • 3.Java运算符
  • 《RockectMQ实战与原理解析》Chapter4-分布式消息队列的协调者
  • Spring Boot 最适配的 UI 是什么
  • TensorFlow 1.x 深度学习秘籍:6~10