代码之家  ›  专栏  ›  技术社区  ›  Jason

在同一代码库上部署多个站点-ASP.NET、C_、MVC

  •  1
  • Jason  · 技术社区  · 15 年前

    我最近继承了一个包含大约10个项目的解决方案。其中6个项目是基本上是复制/粘贴原件的单个网站。

    这意味着必须对每个项目进行任何更改,以便更新所有网站。

    我想做的是有一个项目的网站代码,并能够部署该代码和一些配置设置,以创建一个新的网站。这样,当我对主Web项目进行更新时,我就可以部署到所有网站。

    人们通常如何处理这个问题?我将概述我对此的想法,希望你们中的一些人能指出更好的方法来完成这项工作,或者至少给我一些肯定,我走上了正确的道路。

    • 使用非常普通的容器进行主标记。
    • 允许设置站点的用户/人员向站点添加小部件,这些小部件将分配给所有通用容器顶部和底部的小部件占位符。
    • 所有的样式和颜色都将通过一个可交换的样式表进行控制。
    • 我知道你可以做些什么。这是否只是交换一组CSS,让您配置在webconfig中使用哪一个?
    • 对于所有站点中相同的元素,例如页脚图像具有命名约定。所以如果我想让站点A有一些页脚图像,我只需在部署时替换项目中的footer.jpg。
    2 回复  |  直到 11 年前
        1
  •  1
  •   Rob Bell    11 年前

    你的方法很好。

    1. 您应该使用主标记
    2. 您的网络系统将是CMS
    3. 可以使用主题定义不同项目的样式,也可以动态链接CSS文件
    4. 如果它们真的是彼此的副本,你可以把它们定义为一个网站,并将CSS图像标记的所有设置都放到数据库中,从而使之非常通用。
    5. 如果您不想使所有内容都非常通用,那么可以使Web用户控件成为通用控件,并在运行时根据项目动态加载它们(记住,您可以加载 WebUserControls 在运行时使用 LoadControl 方法)
        2
  •  1
  •   Lazarus    15 年前

    不幸的是,这个问题很可能得到“它取决于”的答复,因为根据项目的需要,可以使用或不使用这些方法中的每一种。如果项目只因表示方式不同而不同,那么结合CSS的母版页将是一个合理的解决方案。

    推荐文章