ASP.NET Ajax学习笔记(一)异步通信层

异步通信层使用Sys.Net.WebRequest 类提供用于发出 Web 请求的客户端脚本功能


var wRequest = new Sys.Net.WebRequest();

Name

说明

Sys.Net.WebRequest webRequest 构造函数

初始化 WebRequest 类的新实例。

Name

说明

Sys.Net.WebRequest add_completed 方法

注册与 Web 请求实例关联的事件处理程序。

Sys.Net.WebRequest completed 方法

引发关联 Sys.Net.WebRequest 实例的完成事件。

Sys.Net.WebRequest.getResolvedUrl 方法

获取 Web 请求实例的解析后的 URL。

Sys.Net.WebRequest invoke 方法

为 Web 请求实例发出网络调用。

Sys.Net.WebRequest remove_completed 方法

移除与 Web 请求实例关联的事件处理程序。

Sys.Net.WebRequest body 属性

获取或设置 Web 请求的 HTTP 正文。

Sys.Net.WebRequest executor 属性

获取或设置关联 Web 请求实例的执行器。

Sys.Net.WebRequest headers 属性

获取 Web 请求的 HTTP 标头。

Sys.Net.WebRequest httpVerb 属性

获取或设置用于发出 Web 请求的 Web 请求 HTTP 谓词。

Sys.Net.WebRequest timeout 属性

获取或设置 Web 请求实例的超时值。

Sys.Net.WebRequest url 属性

获取或设置 Web 请求实例的 URL。

Sys.Net.WebRequest userContext 属性

获取或设置与 Web 请求实例关联的用户上下文。


示例
Employee 类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
///Employee 的摘要说明
/// </summary>
public class Employee
{
    private string _FirstName;
    private string _LastName;
    private string _Title;

	public Employee()
	{
		//
		//TODO: 在此处添加构造函数逻辑
		//
	}

    public Employee(string firstName, string lastName, string title)
    {
        this._FirstName = firstName;
        this._LastName = lastName;
        this._Title = title;
    }

    public string FirstName
    {
        get
        {
            return this._FirstName;
        }
    }

    public string LastName
    {
        get 
        {
            return this._LastName;
        }
    }

    public string Title
    {
        get
        {
            return this._Title;
        }
    }
}

AsyncComLayer.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AsyncComLayer.aspx.cs" Inherits="AsyncComLayer" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <script type="text/javascript">
        function showEmployee(firstName, lastName, title) {
            var request = new Sys.Net.WebRequest(); //初始化WebRequest类的新实例
            request.set_url("GetEmployee.ashx");    //设置Web请求实例的URL
            request.set_httpVerb("post");           //设置用于发出Web请求的Web请求HTTP谓词
            request.add_completed(onGetEmployeeComplete);//注册与Web请求实例关联的事件处理程序

            var requestBody = String.format("firstName={0}&lastName{1}&title={2}", encodeURI(firstName), encodeURI(lastName), encodeURI(title));

            request.set_body(requestBody);          //设置Web请求的HTTP正文

            request.invoke();                       //为Web请求实例发出网络调用
        }

        function onGetEmployeeComplete(response) {
            if (response.get_responseAvailable()) {
                var employee = response.get_object();
                alert(String.format("firstName={0},lastName={1},title={2}",
                employee.FirstName,
                employee.LastName,
                employee.Title));
            }
        }
    </script>
    <div>
        <input type="button" value="Bill Gates" οnclick="showEmployee('Bill','Gates','Chair man')" />
        <input type="button" value="Steve Ballmer" οnclick="showEmployee('Steve','Ballmer','CEO')" />
    </div>
    </form>
</body>
</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值