网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

PageTemplate(页模板)

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
t;%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication3.WebForm1" %>

<form id="Form1" method="post" runat="server">

this is a Test.

</form>

 

在webform1.aspx.cs里:

public class WebForm1 : PageBase

{

private void Page_Load(object sender, System.EventArgs e)

{

// 在此处放置用户代码以初始化页面

pagetitle = "This is a Test";

}

}

 

至此,一个简单的page Template已经实现,运行看看,感觉怎样?J

二、 更多的Page Template应用
我们在做WEB应用时,经常发现WEB应用里的所有的页面都具备部分相同的表现或功能,例如Session处理、页面错误处理等。这些所有页面都相同的表现或功能,我们就可以通过Page Template技术解决,一来方便程序的整理及维护,二来减少代码量。下面列举了大部分WEB应用都具备的一些共性,这些共性可以通过Page Template技术轻松实现:
●Session处理
通常,我们需要记录用户的一些信息,如用户名、用户编号等,然后页面程序通过取得这些用户信息进一步判断用户是否已经登录、或进一步取得用户详细资料等。
[思路]:利用Page Template,只需要在所有页基类里定义一个是否已经登录的属性、或设置一个判断是否登录的保护方法,即可在每个页面自动判断用户是否已经登录,如果未登录立即跳转到登录页。
●国际化
对于一个需要多国语言显示的WEB应用时,需要在每个页面读取资源文件,以使页面以各种语言显示出来。
[思路]:根据获取到的用户客户端的使用语言,利用CultureInfo类进行操作。然后根据一个关键字key去获取在资源文件里的相应语言正文信息。
CultureInfo cultureObject = CultureInfo.CreateSpecificCulture(langCode);
Thread.CurrentThread.CurrentUICulture = cultureObject;
Thread.CurrentThread.CurrentCulture = cultureObject;
●错误处理
可以定义所有页面处理错误的方式的一致性——记录错误->跳转到错误页->以适当提示信息显示错误。
[思路]:利用Page Template,可以在页基类里定义一个ErrorCode属性,接着增加一个SetErrorCode(int code)方法实现设置ErrorCode属性和跳转到错误页面功能(SetErrorCode在后部代码的catch块里调用)。当跳转到错误页面时,错误页面将取得ErrorCode:
int errorCode = ((PageTemplate)Context.Handler).ErrorCode;
然后错误页面就可以根据errorCode从资源文件里取到相应的错误信息并显示出来。
●通用工具方法
所有页面都需要进行一些实用的方法,例如记录操作日志、发送信息操作等。
●帮助系统
当用户点击页面帮助按钮时,提供一致的帮助显示方式——打开帮助窗口->显示帮助->跳转到当前页所对应的帮助信息页。
[思路]:在页基类里定义HelpURL属性,然后在Render()里使用该属性。
●其他
诸如数据库操作、页面样式定制、甚至是所有页面都具有的按钮、图片样式或功能定制都可以使用Page Template实现。当然,具体还得根据具体情况应用。

三、 更多Page Template基类
通常,我们一个WEB应用都会由拥有不同模板基类的不同模块组成,例如论坛、后台管理、新闻发布、网上商店等。我们可以利用Page Template技术进一步整理为:


四、 什么时候应该使用Page Template?
最后,我希望大家都能明白,任何一样技术都不会在任何地方适用及使用的。因此,对于Page Template的适用范围为:在不止一个页面(一般是很多页面)的WEB应用里,每个页面都包含诸如headers、footers、menus、session等,甚至是诸如获取登录的用户信息等公用的方法时。
好了。如果需要更为详细的信息或需要下载示例代码,可以参考一下资料:
http://www.codeproject.com/aspnet/pagetemplates.asp
http://www.codeproject.com

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 |原创论文 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师