备份解决方案/项目以在c#中创建骨架

时间:2014-04-08 18:37:49

标签: c#

也许这是错误的问题。我不理解解决方案和项目之间的层次/关系,所以我将首先描述我的目标。我有一个有效的表单应用程序。我想将其中的所有内容复制到同一台PC上的另一个文件夹中,该文件夹具有不同的名称,这反映了我想要构建的新表单应用程序的用途。我想使用我作为骨架复制的旧父,一个起点。我已经尝试复制整个WindowsFormsApplication1并重命名它,但是当它构建时,它引用旧的父文件夹中的东西。我希望每个都完全自包含,而不是引用我刚用骨架制作的新文件夹之上的东西。

有人可以描述项目,解决方案,创建的名为WindowsFormsApplicationx的文件夹和.sln文件之间的关系吗?如果这太笼统了,我会很高兴只是逐步完成我的目标。

感谢您的耐心等待, 拉马尔


感谢onlinecop,这有帮助,但我仍然没有到那里。

当我创建表单应用程序时,它在Studio2010 / Projects目录中创建了一组文件和目录:

WindowsFormsApplication2.sln

WindowsFormsApplication2.suo

WindowsFormsApplication2(文件夹)

Bin (folder)

Obj (folder)

Properties (folder)

Form1.cs的

Form1.Designer.cs

Form1.resx中

Program.cs的

WindowsFormsApplication2.csproj

WindowsFormsApplication2.csproj.user

我使用Forms Designer制作了一个表示层,尽管它没有太大变化,但它确实改变了一些。

我想从所有这些开始,可能会或可能不会对它们进行更改,但我会想要更改它们的所有名称。

除了更改名称之外,我的大多数更改都在Form1.cs中以及Forms Designer保留其更改的位置。由于它是图形输入而不是文本,我不知道它存储在哪里。

我想这样做而不会打扰任何原件。

几乎没有一个是单元测试,大多数都是新的,解决了不同的应用程序,因此我不想依赖于版本控制工具。

我想通过引用使用它们,而是通过复制,因为我希望父母隔离并保持不变。

所以看起来我希望这些解决方案完全不同,而不是解决方案中的项目......这是对的吗?

“Add Existing”会为我做这件事,我应该在哪里做

在阅读教程时,我的印象是基本上解决方案与应用程序相关联,项目是子实体,可能是对主机单元测试或调试的增量更改。

因为我想制作一个完全不同的应用程序,我不想与父母混淆,我想我想要一个新的解决方案。但我想使用我父母中的大部分内容,那么如何创建一个新的解决方案并用旧源文件的内容填充它并重命名呢?我想不要把它们称为Forms1.cs和WindowsFormsApplication2 ... ..更多描述它们的东西,比如NeutronMigrationAnalysis ......

如果我提出错误的问题,如果我理解何时应该创建一个新的解决方案而不是一个包含大量项目的单一解决方案,那么可能会更清楚。

谢谢!

拉​​马尔

1 个答案:

答案 0 :(得分:0)

解决方案包含多个项目

让我们说你创建一个单元测试。该测试将运行您在不同的项目中创建的方法,以确保这些方法正常工作。所以在这个解决方案中,你实际上有两个项目:一个是你的普通表单应用程序,另一个是单元测试,你作为开发人员可以看到但是最终用户赢了。

这些文件夹本质上只是层次结构:它可以帮助您将项目分开,并且文件很容易找到。

所以在主解决方案中选择原始表单项目。您的解决方案文件(通常是.sln文件)定义了其中包含一个项目以及存储它的目录。它通常也会跟踪其他一般或全球信息。

表单项目包含自己的项目文件(通常是.csproj文件),通常位于最初启动的子目录中。这将定义您想要包含的所有文件,所有特殊构建选项,文件夹,文件和资源的逻辑布局等。

如果要重新创建骨架项目,通常会创建一个新的空项目。然后,将所有源文件从表单项目复制到其中,然后"添加现有..."文件,以便这个项目看到它们。这样做会阻止从原始项目中复制.csproj文件并保留所有旧的父文件夹文件/引用。