因为最近的项目需要使用在Asp.net下使用Ajax技术.进行了一些实际研究,原来想用Ext,但考虑到同组的哥几个一起开发,Ext的类库过大,并且它的优势在于UI方面;而对于微软官方的解决方案ASP.NET AJAX的类库还包括后台的类库觉得稍重量级了些.最后选择了jqury,轻量而优雅.
对于jqury这个javascript类库,有官方的网站支持,感兴趣的想彻底研究的不妨移步过去:点这儿.
这里只提供自已使用jqury在Asp.net中的应用方案。
首先,要解决的问题是使用jQuery.getJSON(url,[data],[callback])方法中url,即要获取前台处理数据的地址。因为以前有过开发GIS的经验,所以知道一般GIS的解决方案是通过调用“一般处理程序”即以.ashx结尾的文件,它实际上是通过继承IHttpHandler这个接口来实现自定义返回给客户端自定义内容的。
IHttpHandler这个接口比较简单只有一个属性和一个方法:

2

3

4

5

6

7

8

9

10

11

其中ProcessRequest(HttpContext context)这个方法是我们关心的。在我们的.ashx文件中,我们就是要实现自已的ProcessRequest(HttpContext contex),用它来给客户端返回前端数据。
第二个要解决的问题是C#的数据结构和javascript是完全不同的,所以C#的数据要返回给javascript处理,必须的找个桥梁。这里有两个选择:1.xml;2.JSON。因为这里只是简单的应用实现,所以我选择的是相对简单的JSON。
方案已定,下面在自己的.ashx文件中可以这么实现ProcessRequest(HttpContext contex)方法:

2

3

4

5

6

7

8

OK,后台的部分完成,剩下的就简单很多,在前台页面中请求这个.ashx即可:

按F5的话可以看到效果。
当然这只是简单的Demo,如果想实际应用的话,可以写一个类库来专门处理C#转化为JSON格式,这样处理起来应该方便很多。如果有时间的话,等闲下来我来实现个。关于序列化JSON,可以用JavaScriptSerializer(否决的)或者DataContractJsonSerializer。谢谢九楼的兄弟!
不知道这个轻量级的应用是否恰当,请各位兄弟指教!
如果想要Demo的话可以留下邮箱
关于demo我没有想到这么多人想要,明天到单位我就把它上传上来,谢谢各位了,邮件我尽量回复,回不到的请见谅!
Demo在这儿,点我
在这里要谢谢Ants ,我应该以前读过他的这篇文章:
http://www.cnblogs.com/leleroyn/archive/2008/06/17/1224039.html
demo也是借签他的,时间长了,忘记声明了,在这里谢谢Ants指出。
各位可以移步去Ants 处看下!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?