找回密码
 FreeOZ用户注册
查看: 1979|回复: 15
打印 上一主题 下一主题

Master Page+CSS+Theme 动态网站加载

[复制链接]
跳转到指定楼层
1#
发表于 27-10-2009 10:34:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
先说一下目前的项目:

1. 需要做的网站有80多个
2. 各个网站的布局基本上差不多(banner, footer, content)但是允许各个网站页面布局的可定制化。
3. 打算采用asp.net 的master.page+css+Theme 来实现统一的管理(CMS,前台页面加载)

问题是目前的方案有两个:

方案1:把所有网站所能包含的布局都写到一个master.page里面,根据不同的网站来动态修改master.page的
控件(主要是可见不可见),再通过CSS+Theme控制控件的格式。但这样会有问题,就是网页加载速度会很慢。

方案2: 先写一个总的Gernal Master.page,然后根据不同的网站定制相应的sub-Master.page(Nested
from General Master.page),各个不同的网站采用不同的master.page+CSS+Theme。

不知道还有没有别的可采用的方案?请各位达人分析一下。谢谢!
回复  

使用道具 举报

2#
发表于 27-10-2009 12:09:38 | 只看该作者
有考虑过用DNN吗? 我觉得还不错的, 尤其是对多网站的管理
回复  

使用道具 举报

3#
 楼主| 发表于 27-10-2009 15:10:52 | 只看该作者
DotNetNuke, 以前的公司做项目的时候用过, 但是感觉要是把现有的系统(ASP)转到DNN上还是有难度。目前只有我一个人懂DNN。

目前阶段是,需要有原来的系统(asp)升级到asp.net, 我来做一个Demo,我就使用 Master.page+Theme+CSS / BaseMaster+BasePage 做。 关键是现有的网站有80-200个,怎样设计这个框架来适应这种网站的可定制性。
回复  

使用道具 举报

4#
发表于 27-10-2009 20:22:23 | 只看该作者
.Net里面可以动态设master page阿
master page名字存在web.config里面
然后每个page_init里面设一下就可以了
都做成一个master page可能有点太大了
回复  

使用道具 举报

5#
 楼主| 发表于 28-10-2009 09:11:13 | 只看该作者
是的, 因为每个网站的Top banner, left panel里面的image的大小格式还不一样,所以如果要是只是用一个Master page的话,还不能用<Table>去控制,只能用<DIV>。如果80个网站的所有的Top banner(举个例子)都这样放在一个地方的话,有点太臃肿而有不太实际。

所以觉得针对每个网站应该有一个Template (Theme, CSS)的东东来控制,根据目前不同的网站来动态加载不同的Template, 从而实现统一的管理。
回复  

使用道具 举报

6#
 楼主| 发表于 28-10-2009 09:41:37 | 只看该作者

回复 #4 fm_yy 的帖子

是这样的,可以动态修改Master.page,Theme。 这个已经实现。
回复  

使用道具 举报

7#
 楼主| 发表于 28-10-2009 17:08:02 | 只看该作者
现在想想,归根结底,是不是需要针对每一个Website创建一个Template (Master.page),还是需要把所有的Websites的Template放置到一个General Template(Master.page)里面,这样就不能用<Table>了,只能用<Div>了。
回复  

使用道具 举报

8#
 楼主| 发表于 29-10-2009 09:08:03 | 只看该作者
昨天晚上突然之间收到启发,朦胧之间有了一个折中的解决方案

[ 本帖最后由 espress74 于 2-11-2009 11:56 编辑 ]
回复  

使用道具 举报

9#
发表于 30-10-2009 10:31:13 | 只看该作者
欢迎.net的人。
回复  

使用道具 举报

10#
 楼主| 发表于 4-11-2009 09:20:07 | 只看该作者
个人来讲,应该是这样的,每个个体网站建立一个 Style(Master, Theme, CSS)。要是把所有的东东都放到一个篮子(Master.page)里面, 对于这样多的网站来讲,除了性能考虑,其实从开发效率和速度上来讲,一点都没有提高,反而会下降(考虑全部网站的元素以及所有<DIV>的处理等等)。

[ 本帖最后由 espress74 于 4-11-2009 09:21 编辑 ]
回复  

使用道具 举报

11#
发表于 5-11-2009 19:00:14 | 只看该作者
嵌套Master
回复  

使用道具 举报

12#
 楼主| 发表于 10-11-2009 09:14:26 | 只看该作者
是的,已经讨论过了,通过采用建立一个 General Master.page, 同时针对每一个网站创建嵌套于该 General Master.page的子Master page(SubMaster.page),General Master.page全部采用<div>,而SubMaster.page可以采用<div>也可以采用<table>元素。 --- 目的: 开发效率及网站维护性的提高。

同时,基于OOP的开发理念,所有的SubMaster page继承于BaseMaster.page,并同时使用 N-Tiere(UI/BL/DA/DA for SQL/SQL Server)的开发模式。这样这种架构就比较合理了。 --- 目的: 开发效率 可扩展性以及网站可维护性的提高。



[ 本帖最后由 espress74 于 10-11-2009 09:16 编辑 ]
回复  

使用道具 举报

13#
发表于 11-11-2009 16:52:14 | 只看该作者
LZ的所有网站仅仅是展现层不同,还是业务层也有区别,或者仅仅是style上的不同?

各个网站页面布局的可定制化,是指用户可以定制?

除了Master Page之外,有没有考虑过用xml+xslt地展现方式?可以两者比较下,或者结合使用。
回复  

使用道具 举报

14#
 楼主| 发表于 19-11-2009 09:09:00 | 只看该作者
谢谢楼上的建议,
基本上经过深入研究(看程序,因为没有文档),目前的系统是ASP开发的,所有动态的东西都是通过从数据库抽取数据拼凑HTML Markups来完成,也就是说业务层次基本上是一致的,只是页面布局的不同而已。

除了Master Page外,确实还有XML+XSLT可以实现的(我在用VS2003平台时做项目的时候用的很多,但是感觉对数据展示的时候比较合适)

因为刚到公司也是不久,但是对系统框架基本上已经掌握,并且我所建议的系统升级架构也已经通过。下一步具体的升级,就不知道是猴年马月了(因为我们还在维护旧的系统哦)   , 谢谢LS的建议。
回复  

使用道具 举报

15#
发表于 26-11-2009 18:54:49 | 只看该作者
不好意思掺乎一下,seek上的需求CMS的多是要求用PHP的框架,市面上能查到也是以PHP CMS,.net要做效果如何
回复  

使用道具 举报

16#
 楼主| 发表于 2-12-2009 09:20:14 | 只看该作者
因为我不是很了解PHP,你不妨Google一下。至少我认为.Net是OOP的开发模式。还有开发效率,易维护性,扩展性,使用性能等等。
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 5-3-2025 02:26 , Processed in 0.038355 second(s), 32 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表