Ajax with ASP.NET 反射换取人月
原文 http://www.886s.com/blog/?p=96
随着Ajax的盛行,大家都去凑热闹,我们的项目也不例外。
看了一下现有的代码,对于一个操作抽取一个的页面,把参数接收,调用逻辑层的相关函数并返回相应的Json或者Xml,搜索了一下,工程中竟然有了360+个这种页面,这真是一种浪费!如果用反射,一个页面就可以搞定!节省了多少人月?
约定:
首先,设定所有的逻辑层将封装到一个dll中,并有相同的命名空间。
其次,约定返回值,统一约定为返回json 或者 xml(我们选择了json)。
最后,约定尽量避免使用重载,参数尽量使用.Net的基本类型。
实现:
一、寻找类和函数
//这两项必须有,如果没有就走异常失败流程
string className = string.Format("{0}.{1}", m_Namespace, GetRequest("Class", context));
string methodName = GetRequest("Method", context);
//忽略了大小写,有需要可以加上
Type classType = m_Assembly.GetType(className, false, true);
if (classType == null)
throw new ArgumentException(string.Format("程序集中找不到类{0}", className));
MethodInfo method = classType.GetMethod(methodName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase);
if (method == null)
throw new ArgumentException(string.Format("{0}中找不到函数{1}", className, methodName));
二、判断是否是静态,如果不是静态函数,则创建对象,并执行函数
相关文档:
在学习被停滞了N久以后,今天终于下定决心要继续了。过了太久堕落的生活也开始厌倦了。继续开始我的MVC学习之路。 目录机构: models 文件夹: 模型组件 还可以存放有关数据访问操作的一些类、对象的操作的定义等。 Views 文件夹: 视图组件。可以存放的文件类型包括.aspx页面,.ascx控件以及.mas ......
Microsoft ASP.NET AJAX可以很方便的让我们在客户端使用脚本调用ASP.NET Web
Services(.asmx),要启用这一特性,像前面提到的一样,必须要配置Web.Config,可以参照Microsoft ASP.NET
AJAX安装目录下的Web.Config,如果是通过ASP.NET AJAX-enabled Web
site模版建立的站点,则不需要再进行设置了。配置节点如下 ......
原文:刘武|asp.net中cookie的处理
使用中发现用Request.Cookies.Remove()无法删除cookie,google了一下发现一般是通过将过期时间设置成过去的时间来完成删除的。顺便整理下cookie的操作:
一 创建
1 单值的创建
C#-Code:
HttpCookie hc = new HttpCookie("Value");
hc.Value = "value";
Response.Appe ......
关于控件图标的事,可没少瞎折腾,从前年想入手这方面开始,就没搞定过。N多大虾的贴子都翻烂了,也没找出个头绪来。其实最开始有次真给蒙出来了!不过后来改控件,也不知道改哪了。没了!于是满世界的CSDN、MSDN。。。。NB的人,NB的文章看了眼晕,打死也没有弄出来。昨天项目中遇到问题,看了一哥们的控件(WEBABCD:至今 ......
http://www.cnblogs.com/TerryFeng/archive/2009/02/01/1382123.html
这很常用,搜索了一下博客园的“找找看”和谷歌,看到大部分都是转载于一两篇文章(而且来源还不是博客园),有的是简单的说一点无法运行,给初学者的调试和学习带来不方便,我在这里将jQuery Ajax 调用Aspx.Net WebService 的几个常用的方法 ......