加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

在两个应用程序中拆分ASP.NET应用程序 – 处理共享页面/用户控件

发布时间:2020-12-16 07:40:20 所属栏目:asp.Net 来源:网络整理
导读:我有一个很大的ASP.NET应用程序(遗留),它实际上(功能上)由两个门户组成.所以我需要将它拆分为两个独立的应用程序,以简化每个应用程序的开发. 当然,两者之间有共同的特征.其中一些是在DAL和BL中,这不是问题 – 所有代码都是单独的单独项目,它们构成了在两个应
我有一个很大的ASP.NET应用程序(遗留),它实际上(功能上)由两个门户组成.所以我需要将它拆分为两个独立的应用程序,以简化每个应用程序的开发.

当然,两者之间有共同的特征.其中一些是在DAL和BL中,这不是问题 – 所有代码都是单独的单独项目,它们构成了在两个应用程序中引用的程序集.

但问题在于一些页面,许多用户控件,一些css和javascript文件,它们在两个“门户”(应用程序)之间共享.

我想就如何处理它们提出一些建议.我主要关心的是避免重复,所以理想情况下他们应该留在一个地方,并被两个应用程序使用.

首先,我尝试将文件从一个项目添加到另一个项目作为链接文件.虽然这适用于代码文件(它们内置到它们链接到的项目中),但它不适用于aspx / ascx或css / javascript / images.如果我首先发布(如果标记为内容,它们会在发布期间被复制),但我在开发期间无法一直执行此操作,并且在从源代码调试/运行应用程序时找不到此类文件(sincve,很明显,当一个人正在寻找其中的任何一个时,链接文件实际上在app文件树中不可用.

另一个想法是创建预构建事件,并在其中复制来自公共位置的所有共享文件.
例如我创建了一个项目Common,并将所有文件放在应用程序之间共享,组织在文件夹上,并在预构建时执行xcopy.

另一个想法是使所有共享文件成为我在两个项目中使用svn:external引用的SVN存储库的一部分.

但所有人看起来都很麻烦.有没有人有类似的情况?你是怎么处理的?

对我的任何建议有任何建议吗?

解决方法

你至少有两种选择:

>通过虚拟目录共享:https://stackoverflow.com/a/13724316/1236044
>创建用户控制库:https://stackoverflow.com/a/640526/1236044

对于像css,js,images这样的资源,虚拟目录方法似乎很简单.
我也倾向于喜欢它来共享用户控件.

库方法应该需要更多的工作,但从长远来看将确保控件的更好的可重用性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读