【问题标题】:Master Pages - Design question母版页 - 设计问题
【发布时间】:2008-11-03 00:59:01
【问题描述】:
你们认为母版页应该是公司框架的一部分还是应该是每个应用程序的一部分?或者公司的框架应该只有一个接口来为所有母版页提供最少的功能?
目前我们面临两个问题:首先,最初的想法是为每个业务应用程序都有一个共同的布局。这就是为什么母版页位于公司框架中的原因。其次,一些应用程序需要有不同的布局,这造成了一些痛苦,因为菜单、CSS 类等的整个逻辑都在框架中......
你们能告诉我你的想法吗?
谢谢,
【问题讨论】:
标签:
c#
asp.net
master-pages
master
【解决方案1】:
我会尝试将常见控件等 UI 元素移到您的框架库中,并为应用程序中的每个应用程序创建一个母版页。这将使您能够通过使用通用控件在应用程序中维护通用 UI 元素,并提供为每个应用程序创建不同布局的灵活性。
另外需要考虑的是在同一个应用中为不同的目的使用不同的母版页。例如,您可以将一个母版页用于内部员工,一个用于客户等。或者您可以将一个母版页用于普通浏览器,而将另一个母版页用于黑莓等设备。
【解决方案2】:
共享一些 CSS 和设计库(模板、图像、调色板),但单个共享母版页不太可能足够灵活。
【解决方案3】:
我认为这取决于贵公司的要求。我曾经为一个组织工作,它是我们核心框架的一部分。然而,这只是因为我们所有的 Web 应用程序都是内部的,并且需要具有相同的外观和感觉。
【解决方案4】:
如果您正在考虑拥有一个共享母版页,这可能意味着您的逻辑过多。在我的公司,他们历来创建具有许多通用功能的基本母版页和基本页面。问题是这是非常不灵活的。我已经开始使用 MVP 框架并从页面中提取逻辑,并且不再需要一个通用母版页,它只有布局逻辑。
【解决方案5】:
母版页旨在在多个页面上保存整个网站的静态元素。您可以使用它来保存页脚、页眉等。
我认为您甚至不应该考虑为多个应用程序使用相同的母版页,这会严重限制您可以对母版页执行的操作。事实上,如果需要,我鼓励您在一个应用程序中包含多个母版页。这没有什么问题。
如果您尝试在多个应用程序中使用相同的母版页,则必须进行一些非常有创意的编程以保持它们的灵活性,而且您知道会发生什么... 一个应用程序中引入的错误会渗透到所有应用程序中.所以这绝对是一个禁忌。
希望对您有所帮助。