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 ......
关于ASP.NET页面打印技术的总结
B/S结构导致了Web应用程序中打印的特殊性。
• 程序运行在浏览器中,打印机在本地,而文件确可能在服务器上,导致了打印控制不是很灵活。
• 格式如何控制和定制等,是我们开发中可能会面对的问题。
打印文档的生成
• 1、 ......
关键在上传的使用用到了upload.aspx,而这个页面默认的编码统一为utf-8,所以我们要给它改变一下。在你的web.config中增加此字段
<location path="fckeditor/editor/filemanager/connectors/aspx/upload.aspx">
<system.web>
<globalization req ......
原文:刘武|如何在ASP.NET页面中嵌入WINFORM控件二
上一篇介绍了在ASP.NET页面中嵌入WINFORM控件的基本方法,本篇会举个稍微复杂的例子来说明如何在页面中调用WINFORM控件的属性和方法。
一 新建项目 Liuw.Net.WindowsControlLibrary,并添加WINDOWS用户控件 MyControl1
二 给控件 MyControl1 添加属性和方法:
C#-Co ......
由于项目中多处需要对配置文件进行操作,如配置信息的读取、更改和写入,需要一个通用的类来对其进行操作和处理。这次的任务就是配置节的一些用法。
这次升级后的开发工具是基于VS2005的,分析了VS2005 新增的一些功能,它自带了一套配置文件中结点等的配置。目前的项目用的配 ......