2014-04-28 127 views
0

我是一个Visual Studio noob。我的背景更多与Unix相关,主要用于通过scons或make构建东西。我甚至没有太多的Eclipse经验。在Visual Studio上构建相关项目

无论如何,我感到沮丧,似乎很难在VS中的项目之间移动文件。 (我正在运行Visual Studio 2013)。例如,假设我有一个ProjectXRel(发布),我想要一个ProjectXDev(开发)。我希望它们都可以运行,并且dev版本可能只有一些编辑更改,它与rel版本有所不同。直觉上的想法是从ProjectXRel复制文件来创建ProjectXDev,但VS似乎与我斗争(它想要将所有命名空间重命名为项目标题)。

此外,一些文件,如从通过的.dbml或设计者,衍生的.cs文件似乎不可复制,并依靠一个复制使用该实用程序具有有效文件的过程。我习惯于通过文件定义项目,但VS中并不是这样。相反,它似乎是由用于创建和组织文件的流程步骤定义的。

另外,严肃的开发人员只是使用命令行调用和PowerShell?这似乎很难,但至少你知道什么叫%@ $$#是怎么回事.....

因此,基本的问题是,一个人如何复制一个现有的项目,以产生类似一个用于开发目的? (我知道源代码控制诸如混帐可以提供帮助的,但是这不是这种情况的一个选项。)

谢谢!

回答

1

您应该为开发和发布使用相同的项目。

是开发和发布之间不同的东西应该被保存在一个配置文件(Web.config或App.config中,根据什么类型的项目)。

然后,您应该使用Configuration Transformations将该.config文件转换为Development或Release。

在Visual Studio中,右键单击项目,然后单击添加新项目,选择“应用程序配置文件”。

在这个文件中,你可以把连接字符串或键/值对设置在AppSettings的元素(MSDN Link)。

定义完基本设置后,可以右键单击配置文件并单击添加转换。这将为您拥有的每个项目配置添加转换。 (默认情况下调试和发布)。

它看起来是这样的:

Screenshot Example

现在可以生成部署包。 或安装Slowchetah,然后当您按F5进行调试时,它将运行应用了配置转换的选定项目配置。

+0

感谢这个答案,但它不适合我的情况。就我而言,“释放”解决方案已经存在,我不想惹它,因为如果它破裂了,那将是一件非常糟糕的事情。 – Jiminion

+0

您可以采用发布解决方案并将其置于调试配置中。 另一种选择是在代码中使用#if条件。 http://msdn.microsoft.com/en-us/library/4y6tbswk.aspx – Kyro

相关问题