ASP.Net 利用反射调用页面方法
现在很多的站点都是基于JQueryUI、ExtJS等等界面库开发的,可以说前台使用了大量的脚本及静态页面,而后台往往只做为请求页面数据来用,那么合理的利用反射,通过传递指令(或动作)的参数,调用页面的相关方法,便可以减少很多的代码量。
1、所有的页面都继承于一个基类BasePage
2、在BasePage类中OnLoad事件增加反射的代码
3、页面中增加相应的方法
string action = Request.QueryString["action"];
if (action != null)
{
Type t = this.GetType();
string result = (string)t.InvokeMember(action, BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, null);
Response.Write(result);
Response.Flush();
Response.End();
}
例如,请求的地址:http://www.test.com/test.aspx?action=GetOperList
那么,只需要在test.aspx页面中有相应的 private string GetOperList() 方法,便能反射执行,返回相应的数据。
看起来有点像MVC框架中的Controller ^_^
相关文档:
步骤:
1. 新建一个WEB解决方案名称为HtmlStatic。
2. 在项目下建一个HtmlTemp.htm其代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head&g ......
Session模型简介
Session是什么呢?简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。这个SessionI ......
1)创建txt文件【web.config】
--------------------------------------------------------------------
<appSettings>
<add key="EditChars" value="D:\Site\ZJPS\TextFile\EditChars.txt"/>
</appSettings>
2) 页面的CS文件中:
--------------- ......
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 不支持 URI 格式。
源错误:
行 30: protected void BTNCLick(object sender, EventArgs e)
行 31: {
行 32: System.IO. ......
可以使用 ISAPI 筛选器在 IIS Web 服务器级别实现 URL 重写,也可以使用 HTTP 模块或 HTTP 处理程序在
ASP.NET 级别实现 URL 重写。本文重点介绍如何使用 ASP.NET 实现 URL 重写,因此我们将不对使用 ISAPI 筛选器实现
URL 重写的细节进行深入探讨。但是,有大量的第三方 ISAPI 筛选器可用于 URL 重写,例如: ......