2010-04-09 68 views
2

手头的问题是这样的。
我们有一个Web应用程序,它有两个不同的版本,一个完整的应用程序和一个轻量版本。在大多数情况下,light版本是完整版本的一个子集,这意味着它使用相同的网页并引用与完整版本相同的二进制文件。Visual studio两个版本的Web应用程序的解决方案

但是,完整版的某些页面显然不应该使用light版本进行部署,并且某些二进制文件(库等)无需使用完整版本进行部署。

如果它是一个Windows窗体应用程序,我们可以尝试用预处理器指令来处理这个问题,不幸的是这不是我想的。 (请纠正我,如果我错了这个)

无论如何,这将是一个很好的方法呢? 谢谢

回答

3

为什么不用两个解决方案(或者你现在在一个项目中的两倍)解决方案。

在精简版版本中,如果您选择“添加现有项目”,而不是具有该文件的副本,则添加按钮会有一点点下拉,这将允许您“链接”到完整版本中的现有文件比添加副本。

这可能有助于“编辑一次”方案。

善良,

+0

太棒了!有用!我遇到的唯一问题是该项目属于WebSite类型,必须将其转换为WebApplication才能接受链接的项目,但现在可以了!谢谢! – 2010-04-09 13:09:39

+0

很高兴帮助! :) – 2010-04-09 13:11:32

0

简单是好的。只需使用两个解决方案文件并相应地更改你的包含堕落(你真的对预编译指令也有),你必须记住在你做出改变后重新编译。

+0

那是我最初的做法,但问题是,我想保持在同一个文件夹中的所有网页。所以,如果我更改了代码,它将在两个版本中都被更改。但是,解决方案文件不会指定要包含的文件夹中的文件,而是指定包含页面的文件夹。如果我在一个解决方案中排除这些文件,那么它们也会被排除在另一个解决方案之外,因为Visual Studio会将其更改扩展为.excluded。所以这也行不通。 – 2010-04-09 11:58:49

+0

你不能使用主项目的快捷方式吗? – 2010-04-09 12:01:38

+1

尝试使用Web应用程序项目而不是网站项目。 – 2010-04-09 12:06:50

相关问题