DotNetNuke Skinning Whitepaper(DotNetNuke部分)

在DotNetNuke 1.0.0到 1.0.10版本中,仅具有一个相对简单的皮肤处理机制,它允许用户通过修改网站的LOGO,颜色和样式来产生一个自定义程度比较低的网站。但不用多久,DotNetNuke开发组就意识到这样的机制无法满足大多数的表现层要求,于是启动了多个项目来实现更具有活力的皮肤解决方案。

不幸的是,在最佳解决方案的看法上具有很多不同的观点,需求分析的进度因此而停滞不前。大部分这些观点都带来了技术实现方案并且不久又有大量的关于皮肤体系的有价值的建议在社区中被提出——这些观点都有他们自己的优点和弱点。如何选择这些解决方案作为DotNetNuke 的核心程序是一件具有非常大压力的事情。实际上我们并没有全盘接受任何一个方案,围绕着所有的业务需求,根据我们理解,我们很慎重的建立了一个未完善的标准并发布了一个用于测试的解决方案,并尝试在实践过程中去完善它。

DotNetNuke 2.0对核心门户框架进行了一次大规模的重写,最初仅对数据访问层和业务逻辑层进行修改,但显而易见的对于表现层也必须重新检查和改写以达到我们的目的。 DotNetNuke 现在拥有了一个强大的皮肤体系,实现了表单(form)和功能(function)的分离,在这个文档接下来的部分,我们将介绍关于这个皮肤体系的详细技术实现过程。

时间: 2024-09-08 21:12:31

DotNetNuke Skinning Whitepaper(DotNetNuke部分)的相关文章

DotNetNuke Skinning Whitepaper(皮肤制作部分)

制作皮肤没有特定的顺序,但如果按如下顺序操作会更好. 设置皮肤开发环境 为了简化皮肤的开发并加快后续打包的速度,建议按如下的文件结构组织文件 \Skins \SkinName ( 你开发的皮肤包的自定义名称 ) - ( 这里放要发布的皮肤包的zip文件) \containers ( this is a static name to identify the container files for the skin package ) - ( 与容器相关的所有资源文件 ) \skins ( thi

DotNetNuke Skinning Whitepaper(总揽部分)

DotNetNuke崇尚简单原则,简单在不同的应用领域有不同的解释,在DotNetNuke中,我们的目标是使复杂的皮肤体系有一个人性化的表现--在使用和管理上简易方便.另外,性能是任何web应用程序的一个关键的问题,因此,我们在这个标准中多次强调这一点.好消息是在DotNetNuke 的皮肤体系中兼具优越的性能和简易性,这在一些案例中已经被证明. 在底层技术上,ASP.NET用户控件明显优越于模版管理.因为用户控件是经过编译的,这在性能上明显高于解释型语言.从后台编码的业务逻辑中提取表现层也是一

DotNetNuke Skinning Whitepaper(页面处理部分)

DotNetNuke 使用单一的 ASPX 页面 ( Default.aspx ) 来展示所有的控件和内容.这样做的好处有两个.首先由户界面管理逻辑集中到了一个单一的页面上,其次是坚少了应用程序的入口,增强了方案的安全性.Default.aspx只有很有限的功能 –包含页面管理的<HEAD> 元素.包含用来放置皮肤的占位符.当用户第一次访问DotNetNuke 应用程序的时候, 首先检查从用户浏览器发来的 URL 和 request header(怎么翻??), 确定所用的皮肤. 这个过程需要

DotNetNuke Skinning Whitepaper(容器创建部分)

容器的创建 根据早期的想法,容器也属于一种可以应用于内容模块的皮肤定义.容器如皮肤一样被精确的定义其外观,不同的是两者的设置是不一样的. 比起皮肤唯一额外的限制是在创建容器时行为控件必须被包含在容器的皮肤.行为控件是DotNetNuke一个新的特性,它扮演一个将内容模块功能性与门户框架连接起来的角色.行为控件实质上是一个让内容模块功能性表现出来的一个用户界面控件.它的主要功能包括:能够管理模块在内容栏目中的位置,能够编辑模块的设置.同时具有对特定模块自定义的功能的能力,允许用户编辑内容以及导航到

DotNetNuke Skinning Whitepaper(皮肤上传部分)

皮肤上传 一旦基于ASCX文件格式的可以执行的皮肤被加入到ASPX页面中,一些皮肤文件中的恶意脚本可能危害到整个系统.基于这个考虑,主机拥有对主机或者网站进行皮肤上传的授权功能.用HOST账户登录,选择主机栏目下的主机设置,你可以看到这个选项.如果该选项被设置成Portal(默认),那么网站的管理者可以不受到主机的干涉上传自己网站的皮肤. 任何文件上传的功能都被集中在DotNetNuke 中网站管理或主机管理下的文件管理栏目.在网站管理下的文件管理中上传皮肤则这个皮肤仅适用于该站点,而如果在主机

DotNetNuke Skinning Whitepaper(皮肤管理与皮肤预览部分)

皮肤管理 在DotNetNuke中,皮肤可以以多种等级运用.类属选择控件用来表现站点用户界面不同区域可以运用的皮肤.每个站点可以像主机皮肤一样使用自己的皮肤.皮肤以子皮肤可以覆盖父皮肤的等级机制来进行配置.比如说,运用于频道级别的皮肤总是取代门户级别的皮肤. 主机级别 主机级别的皮肤运用于主机的所有站点.他们可以由超级用户在主机配置中设置.用户可以配置前台站点和后台管理界面的皮肤或者容器. 站点级别 站点级别的皮肤运用于特殊的站点,他们可以由该站点管理员在站点设置中设置.用户可以配置前台站点和后

DotNetNuke Skinning Whitepaper(XCOPY 部署部分)

XCOPY 部署 在DotNetNuke 2.2.0中,增加了一个新的特性就是在不登录应用程序的情况在在主机级别配置皮肤和容器.当你是一个主机管理员并希望提供给你的用户一些心皮肤,或者你觉得用FTP上传皮肤比用户界面更加方便,或者你想在本机测试你的新皮肤的时候,这是相当有用的一个特性.如何使用这个特性?你只须拷贝你的皮肤或者容器包到应用程序一个适当的文件夹下,应用程序将马上识别到这个文件并执行必要的安装程序.

DotNetNuke Skinning Whitepaper(术语与win客户端程序部分)

翻译:术语 术语 "Skinning(皮肤)"是一个很难用语言解释清楚的东西,简单的说,一种皮肤体系提供给你一个静态的布局,但允许你修改颜色和样式甚至可以用你的图片代替原有的图片,另外一种皮肤体系则拥有允许你自定义除了内容以外的任何外观上的表现.这两种手段有着明显的区别,你需要根据你的商务需要去选择最适合你的应用程序的解决方案. Windows 客户端程序 皮肤技术在Windows客户端程序中已经流行了相当一段时间了,这或许会让你认为不需要太大努力就可以将同样的皮肤体系运用在你的web

DotNetNuke Skinning Whitepaper(文件组织部分)

文件组织皮肤可以应用到主机.站点或者分页级别. 皮肤也可以应用到模块级别,但这时我们称其为容器.所有的皮肤文件保存在portals文件夹下.有一个名为_default的特殊文件夹代表主机的文件夹,然而每一个站点都一起在数据库中的ID为名字有各自的文件夹.这样的结构使得整个网站中需要读写权限的文件夹集中到一个单一的文件夹里.同时使得文件的物理组织和应用程序当中的逻辑应用联系起来,这样就不需要外部数据库支持就可以管理两者之间的关系. 皮肤和容器可以包含不限数量的子文件夹– 每个文件夹代表构成皮肤必须