【发布时间】:2013-01-20 13:06:12
【问题描述】:
我有一个大型 ASP.NET 应用程序(旧版),它实际上(功能上)由两个门户组成。所以我需要将它拆分为两个单独的应用程序,以简化每个应用程序的开发。
当然,两者之间有共同的特点。其中一些位于 DAL 和 BL 中,这不是问题 - 所有这些代码都是独立的项目,它们组成了两个应用程序都将引用的程序集。
但问题在于一些页面、大量用户控件、一些 css 和 javascript 文件,它们在两个“门户”(应用程序)之间共享。
我想就如何处理它们征求一些建议。我主要关心的是避免重复,所以理想情况下它们应该放在一个地方,并被两个应用程序使用。
首先我尝试将文件从一个项目添加到另一个项目作为链接文件。虽然这适用于代码文件(它们被内置到它们链接到的项目中),但它不适用于 aspx / ascx 或 css / javascript / images。如果我首先发布(如果标记为内容,它们会在发布期间被复制),但我不能在开发期间一直这样做,并且在从源代码调试/运行应用程序时找不到此类文件(sincve,很明显,链接文件在应用程序文件树中实际上并不可用,当人们正在寻找其中任何一个时。
另一个想法是创建预构建事件,并从一个公共位置复制所有共享文件。
例如我创建了一个项目 Common 并将所有在应用程序之间共享的文件放在文件夹中,并在预构建时执行xcopy。
另一个想法是让所有共享文件成为 SVN 存储库的一部分,我在这两个项目中都使用svn:external 引用。
但一切看起来我的小麻烦。有没有人有类似的情况?你是怎么处理的?
对我的任何建议有什么建议吗?
【问题讨论】:
标签: asp.net svn split linked-list