DotNetNuke Skinning Whitepaper(技术部分)

翻译:技术

有很多种方法可以从页面上提取用户界面元素,每种方法都包含不同程度的分解元素,需要将表现层与业务层融合在一起。因此,定义何处,何时,以及这些分解元素如何产生成为整个解决方案的重点。

在很多脚本语言中很流行的一种技术是用在用户界面文件中使用标记或标识符描述动态函数,当页面被载入时,这些标识符将被对应的应用逻辑取代。不管采用什么方法(智能分解,字符串函数,正则表达式等等)来完成这个替换工作,关键在于web应用程序的界面是当页面被处理的时候产生的,如果在每个请求之后都进行一次替换工作,那么性能将无可避免的受到影响。为了减轻这种影响,最佳的解决方案需要利用预处理或者汇编技术。

ASP.NET 提供了强大的抽象web页面成为一个组件的特性。用户控件类似于传统的ASP中的 #include标志… 除了???。(原文:User Controls are similar to classic ASP #include directives… except on steroids.,后面那个不知道如何翻译,谁知道的指教一下不胜感激.)用户控件使得分离用户界面和在不同页面重用成为可能。用户控件和一个aspx页面只有两个差别:一个是后缀,用户控件的后缀为ascx,另一个就是他可以不包含<HTML>, <Body>, 或者 <Form>标签,其他几乎没有区别。用户控件可以插入大量的文件中,将表现层从应用程序或者后台代码中分离出来。这个特性允许创建大量的引用同一后台代码的表现层文件 ,另外由于ASP.NET是一种编译过的语言,页面由大量的编译过的用户控件组成,这使得传送的效率相当高,比那些解释型的语言来得快得多。

时间: 2024-08-03 18:58:27

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

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(术语与win客户端程序部分)

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

DotNetNuke Skinning Whitepaper(DotNetNuke部分)

在DotNetNuke 1.0.0到 1.0.10版本中,仅具有一个相对简单的皮肤处理机制,它允许用户通过修改网站的LOGO,颜色和样式来产生一个自定义程度比较低的网站.但不用多久,DotNetNuke开发组就意识到这样的机制无法满足大多数的表现层要求,于是启动了多个项目来实现更具有活力的皮肤解决方案. 不幸的是,在最佳解决方案的看法上具有很多不同的观点,需求分析的进度因此而停滞不前.大部分这些观点都带来了技术实现方案并且不久又有大量的关于皮肤体系的有价值的建议在社区中被提出--这些观点都有他们

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(定义部分)

翻译:定义 在任何一个皮肤解决方案当中要考虑的另一个重要方面是皮肤作者的界定.谁会创建皮肤?什么技术更适合他们.在他们的日常工作中使用什么样的设计工具.在这一方面的需求分析对决定如何的定义皮肤有深远的意义. 尽管ASP.NET的用户控件技术给我们提供了较强的核心支持,他们是微软平台相对较新的技术.一些设计工具(如. FrontPage, DreamWeaver, 等 ) 已经提供了对用户控件技术的支持.但是在这一概念对于一些专业的网页设计人员还很陌生.抛开用户控件中包含了ASP.net 服务器端