我是C#的新手(来自Python和C),当我在Monodevelop或Visual Studio中开始一个新项目时,项目被置于“解决方案”容器中。
我看过微软对解决方案的描述,但我并不真正理解这个的好处以及我应该如何使用它。
在逻辑意义上和文件系统中,项目包含一个解决方案,该解决方案可能包含一个或多个项目,以及构建信息,Visual Studio窗口设置以及与之无关的任何杂项文件任何项目。从字面意义上讲,解决方案是一个具有自己独特格式的文本文件;它通常不打算手工编辑。
有人可以解释一下“解决方案”的用途吗?
答案 0 :(得分:6)
解决方案是一个工作空间,它结合了多个项目,这些项目通常彼此相关。在需要在多个项目之间共享某些代码的情况下,该构造非常有用。
例如,如果您正在开发具有单独服务器端组件的网站,则可以将其分成几个相关项目:
这四个项目相互连接。将它们放在一个解决方案中,您可以访问各个部分,同时利用Visual Studio为您执行的常见索引,以简化对使用的搜索并帮助进行重构。
答案 1 :(得分:3)
虽然所有其他答案都是正确的,但我觉得他们错过了概念上的原因。
项目是一个自包含的工作,可以是Win Forms应用程序,类库,Web站点,Web服务等。
但是,问题的解决方案可能需要多个部分才能工作,即Win Forms应用程序需要类库以及Web服务,但网站可能需要Web服务。
解决方案文件是概念化模型。
如果您的问题是Win Forms应用程序,那么您创建一个解决方案并添加Win Forms应用程序和库。
如果您的问题是网站,那么您创建一个解决方案并添加网站,Web服务和库。
包含该库的项目在两个解决方案中都可以是相同的,这意味着您不必重复代码或跟踪项目的依赖关系,因为它依赖于它已经在您的解决方案中。
答案 2 :(得分:2)
解决方案是" Container"为您的项目。
例如:如果您编写一个Windows应用程序,您可以拥有一个用于UI-stuff的项目和一个用于Backend-logic的项目。
要轻松处理这两个项目,您可以将它们捆绑到一个解决方案中,不仅允许您通过两个项目进行调试,还可以按照您指定的顺序构建它们。
答案 3 :(得分:2)
<强>优点强>
解决方案使您可以专注于开发和部署您的 项目,而不是整理管理的所有细节 项目文件,组件和对象。每个Visual Studio解决方案 允许您:
在IDE的同一实例中处理多个项目。
使用适用于整个集合的设置和选项处理项目 项目。
使用解决方案资源管理器来帮助开发和部署您的应用程序。
管理在解决方案的上下文之外打开的其他文件 项目
阅读整篇文章了解更多详情:Solutions as Containers
答案 4 :(得分:1)
一个解决方案将您的所有项目(dll),文件,配置等组合在一起,您提供的报价非常明显:
在逻辑意义上和文件系统中,在解决方案中包含项目......
答案 5 :(得分:1)
解决方案包含一个或多个项目。例如,解决方案包含Web项目,移动项目和Windows服务项目。所以,我的应用程序的解决方案有3个项目。
答案 6 :(得分:1)
解决方案的好处是您可以在其中添加多个项目。 如果您有一个使用自己的库的项目
,这很好然后,您的解决方案将包含您的主项目和您的图书馆项目。他们都可以依赖彼此,以便他们以正确的顺序建立。
如果没有解决方案,您只需拥有主项目,就必须单独构建库
答案 7 :(得分:-1)
简而言之:解决方案是您工作的总和。