在ASP.NET中实现AJAX

来源:互联网 发布:java常用开发工具 编辑:程序博客网 时间:2024/06/08 11:16

======================================================
注:本文源代码点此下载
======================================================

在asp.net中实现ajax

在asp.net中实现ajax

asynchronous javascript and

xml(ajax)最近掀起的高潮,要完全归功于google在google suggest和google

maps中的使用。对asp.net而言,ajax不需要回传就能进行服务器端处理,从而使客户机(浏览器)具有丰富的服务器端能力。换句话说,它为异步指派和处理请求与服务器响应提供了一个框架。ajax利用了一些不是很新颖的已有技术,但是对这些技术(加到一起就是ajax)的爱好最近突然升温。

请尝试michael schwarz的ajax

.net包装器,通过它asp.net开发人员可以快速方便的部署很容易利用ajax功能的页面。需要注意的是,这个包装器处于初期开发阶段,因此还没有完全成熟。

然而,ajax这样的技术很可能破坏分层体系结构(n-tier)。我的看法是,ajax增加了表示逻辑层(甚至更糟,业务层)渗透到表示层的可能性。像我这样严肃的架构师对这种想法可能畏步不前。我感到ajax的使用即便稍微越过了层次边界,这种代价也是值得深思的。当然,这要视具体的项目和环境而定。

起步:它是如何工作的——概述

ajax依靠代理(broker)指派和处理往返服务器的请求。对此,.net包装器依靠客户端xmlhttprequest对象。多数浏览器都支持xmlhttprequest对象,这就是选择它的原因。因为包装器的目的是隐藏xmlhttprequest的实现,我们就不再详细讨论它了。

包装器本身通过将.net函数标记为ajax方法来工作。标记之后,ajax就创建对应的javascript函数,这些函数(和任何javascript函数一样)作为代理可以在客户端使用xmlhttprequest调用。这些代理再映射回服务器端函数。

复杂吗?并不复杂。我们来看一个例子。假设有一个.net函数:

public int add(int firstnumber, int secondnumber)

{

return firstnumber + secondnumber;

}

复制代码

ajax

.net包装器将自动创建名为“add”、带有两个参数的javascript函数。使用javascript(在客户机上)调用该函数时,请求将传递给服务器并把结果返回给客户机。

初始设置

我们首先介绍“安装”项目中使用的.dll的步骤。如果您很清楚如何添加.dll文件引用,可以跳过这一节。

首先,如果还没有的话,请下载最新的ajax版本。解压下载的文件并把ajax.dll放到项目的引用文件夹中。在visual

studio.net中有机solution explorer的“references(引用)”节点并选择add

reference(添加引用)。在打开的对话框中,单击browse(浏览)并找到ref/ajax.dll文件。依次单击open(打开)和ok(确认)。这样就可以用ajax

.net包装器编程了。

建立httphandler

为了保证正常工作,第一步是在web.config中设置包装器的httphandler。不需要详细解释httphandlers是什么及其如何工作,只要知道它们用于处理asp.net请求就足够了。比如,所有*.aspx页面请求都由system.web.ui.pagehandlerfactory类处理。类似的,我们让所有对ajax/*.ashx的请求由ajax.pagehandlerfactory处理:

好文要顶关注我收藏该文与我联系

posted on 2011-03-25 21:43bingzer 阅读(11) 评论(0)编辑 收藏


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
原创粉丝点击