Web应用程序结构和部署

you*_*pal 11 asp.net deployment web-applications msdeploy vs-web-application-project

我们的产品是ASP.Net Web应用程序.目前,我们在Visual Studio中使用Web站点项目,但一直在研究使用Web应用程序项目.我目前正在研究它们,以便我们可以改进我们的部署过程.

我们有一个在不同客户端之间共享和通用的基本网站,然后我们在客户端网站项目中使用特定于客户端的功能扩展它.客户端项目扩展基础,因此依赖于其内容.要构建完整的产品,我们首先部署基本网站,然后将其与客户端项目中的内容重叠.

在Visual Studio中转换为Web应用程序项目时,我们希望能够创建基础项目,然后创建客户端项目并设置对base的引用.这种结构似乎工作正常,但是当我们尝试使用MSDeploy从客户端项目部署应用程序时,只发布基本网站的dll.这对某些事情来说很好,引用编译的代码很有用,但还有其他项目,如images,js pages,htm等,它们仍然是客户端应用程序运行所必需的源代码.我们需要的不仅仅是基础网站的编译代码.

尽管如此,我可以在这里想到几个选择:

  1. 继续分两步进行部署.首先是基础网站,然后是客户网站,以构建完整的产品.
  2. 修改部署过程以从基础项目复制所需的源文件
  3. 重新构建我们的模型,以不同的方式支持这种基本 - 客户关系.不太确定这是如何工作的,并且是最不可行的选择.
  4. ??

我错过了不同的选择吗?我在设置项目的方式上做错了吗?除了共享编译代码之外,是否还有更多使Web应用程序引用另一个Web应用程序?如果是这种情况,为什么不只是使用共享类库?或者我可能错过了MS Deploy流程的一些内容?

我对这里的建议持开放态度,因为我觉得我错过了一些东西.我不认为我们的Web应用程序模型太独特了.

更新:双部署过程确实有效,但感觉有点笨拙.还有其他输入吗?

dva*_*ejo 0

网站如何在客户之间“共享”?每个客户端最终是否会获得不同的站点(IP 地址等),或者他们是否登录到同一站点但获得不同的功能?您可能希望考虑将所有功能添加到单个项目中,然后通过设置启用/禁用功能。