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 ^_^

你可能感兴趣的:(mvc,String,null,asp.net,action,ExtJs)