新瓶旧酒ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor)

Alipay 支付唤起 h5 测试 测试地址 https://recharge.apps.oppomobile.com/recharge-center/recharge/?from=message try { //唤起客户端快捷参数 var data = {"requestType":"SafePay","fromAppUrlScheme":"alipays","dataString":"h5_ro... 阅读详情
[索引页]
[源码下载]


新瓶旧酒ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor)


作者: webabcd


介绍
学习一下Sys.Net命名空间下与web请求相关的类,WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor


关键
1、Sys.Net.WebRequestManager Class
    ·add_completedRequest(handler); - 添加请求完成后的处理器
    ·remove_completedRequest(handler); - 移除请求完成后的处理器
    ·add_invokingRequest(handler); - 添加处理调用请求的处理器
    ·remove_invokingRequest(handler); - 移除处理调用请求的处理器
    ·defaultTimeout - 默认超时时间

2、Sys.Net.WebRequest Class
    ·add_completed(handler); - 添加请求完成后的处理器
    ·remove_completed(handler); - 移除请求完成后的处理器
    ·invoke(); - 执行请求
    ·getResolvedUrl(); - 转换为可用url
    ·body - HTTP的Body内容
    ·executor - 与当前WebRequest对象相关的executor
    ·headers - HTTP的头信息
    ·httpVerb - HTTP请求方式“GET”或“POST”
    ·timeout - 请求超时时间
    ·url - 请求的url
    ·userContext - 用户上下文

3、Sys.Net.WebRequestExecutor Class
    ·abort(); - 终止请求
    ·executeRequest(); - 执行请求
    ·getAllResponseHeaders(); - 获得全部头信息
    ·getResponseHeader(key); - 获得指定头信息
    ·aborted - 请求是否被终止
    ·responseAvailable - 请求是否成功完成
    ·responseData - 响应当前请求的Body文本
    ·started - 是否已经开始处理请求
    ·statusCode - 状态代码
    ·statusText - 状态信息
    ·timedOut - 请求是否超时
    ·xml - 响应当前请求的XMLDOM对象
    ·webRequest - 获得与当前executor相关的WebRequest对象

4、Sys.Net.XMLHttpExecutor Class
    ·abort(); - 终止请求
    ·executeRequest(); - 执行请求
    ·getAllResponseHeaders(); - 获得全部头信息
    ·getResponseHeader(key); - 获得指定头信息
    ·aborted - 请求是否被终止
    ·responseAvailable - 请求是否成功完成
    ·responseData - 响应当前请求的Body文本
    ·started - 是否已经开始处理请求
    ·statusCode - 状态代码
    ·statusText - 状态信息
    ·timedOut - 请求是否超时
    ·xml - 响应当前请求的XMLDOM对象


示例
GetTarget.xml
<? xml version="1.0" encoding="utf-8"  ?>
< root >
  
< employee >
    
< name > webabcd </ name >
    
< age > 27 </ age >
  
</ employee >
  
< employee >
    
< name > ge </ name >
    
< age > 26 </ age >
  
</ employee >
</ root >

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

<! 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 > Post Target测试页 </ title >

    
< script  language ="C#"  runat ="server" >
        
        protected 
void Page_Load(object sender, EventArgs e)
        
{
            Context.Response.Cache.SetNoStore();

            System.Threading.Thread.Sleep(
new Random().Next(0, 1000));

            
if (HttpContext.Current.Request.Form["Message"] != null)
            
{
                Label1.Text 
= HttpContext.Current.Request.Form["Message"];
            }

        }

        
    
</ script >

</ head >
< body >
    
< form  id ="form1"  runat ="server" >
        
< div >
            
< h1 >
                
<% =  DateTime.Now.ToString()  %>
            
</ h1 >
            
< p >
                
< asp:TextBox  ID ="Label1"  Text ="test"  runat ="server"   />
            
</ p >
        
</ div >
    
</ form >
</ body >
</ html >

WebRequestAndWebRequestExecutor.js
var  getPage;
var  postPage;
var  displayElement;

function  pageLoad()
{
    getPage 
= "GetTarget.xml";
    postPage 
= "PostTarget.aspx";
    displayElement 
= $get("resultId");
}


function  GetWebRequest()
{
    
// 创建WebRequest对象
    var wRequest =  new Sys.Net.WebRequest();
    
    
// url - 请求的url 
    wRequest.set_url(getPage);
    
    
// getResolvedUrl() - 转换为可用url
    alert(wRequest.getResolvedUrl());
    
    
// httpVerb - HTTP请求方式“GET”或“POST”
    wRequest.set_httpVerb("GET");
          
    
// userContext - 用户上下文
    wRequest.set_userContext("webabcd");
            
    wRequest.add_completed(OnWebRequestCompleted);
    
    displayElement.innerHTML 
= "";
               
    
// invoke() - 执行请求
    wRequest.invoke();
}


function  PostWebRequest()
{
    
// 创建WebRequest对象
    var wRequest =  new Sys.Net.WebRequest();
    
    
// url - 请求的url 
    wRequest.set_url(postPage);
    
    
// timeout - 超时时间
    wRequest.set_timeout(500);
    
    
var body = "Message=信息信息信息信息信息信息信息信息信息信息信息信息信息信息信息"
    
// body - HTTP的Body内容
    wRequest.set_body(body);

    
// headers - HTTP的头信息
    wRequest.get_headers()["Content-Length"] = body.length;
            
    wRequest.add_completed(OnWebRequestCompleted);

    displayElement.innerHTML 
= "";
               
    
// invoke() - 执行请求
    wRequest.invoke();  
}


//  executor - WebRequestExecutor对象
function  OnWebRequestCompleted(executor, e) 
{        
    
// responseAvailable - 请求是否成功完成
    if(executor.get_responseAvailable()) 
    
{
        displayElement.innerHTML 
= "";
   
        
// 显示Web Request的用户上下文
        // webRequest - 获得与当前executor相关的WebRequest对象
        // userContext - 用户上下文
        displayElement.innerHTML += "User Context:" + executor.get_webRequest().get_userContext();
        displayElement.innerHTML 
+= "<br /><br />";
   
        
// 显示Web Request的状态      
        // statusCode - 状态代码
        // statusText - 状态信息
        displayElement.innerHTML += "Status Code:" + executor.get_statusCode();
        displayElement.innerHTML 
+= "Status Text:" + executor.get_statusText();
        displayElement.innerHTML 
+= "<br /><br />";
  
        
// 显示Web Request的所有Header          
        // getAllResponseHeaders() - 获得全部头信息
        displayElement.innerHTML += "Headers:" + executor.getAllResponseHeaders();
        displayElement.innerHTML 
+= "<br /><br />";
        
        
// 显示Web Request的指定Header
        // getResponseHeader() - 获得指定头信息
        displayElement.innerHTML += executor.getResponseHeader("Content-Type");
        displayElement.innerHTML 
+= "<br /><br />";
        
        
// 显示Web Request的Body                 
        displayElement.innerHTML += "Body:";
        
if (document.all)
        
{
            
// responseData - 响应当前请求的Body文本
            displayElement.innerText += "/r/n" + executor.get_responseData();
        }

        
else
        
{
            
// Firefox
            displayElement.textContent += "/r/n" + executor.get_responseData();
        }

        displayElement.innerHTML 
+= "<br /><br />";
        
        
// 显示XML数据
        displayElement.innerHTML += "XML:";
        
if (document.all)
        
{
            
// xml - 响应当前请求的XMLDOM对象
            displayElement.innerText += "/r/n" + executor.get_xml().xml;
        }

        
else
        
{
            
// Firefox
            displayElement.textContent += "/r/n" + "首节点:" + executor.get_xml().documentElement.nodeName;
        }

    }

    
else
    
{
        
// timedOut - 请求是否超时
        if (executor.get_timedOut())
        
{
            alert(
"超时");
        }

        
// aborted - 请求是否被终止
        else if (executor.get_aborted())
        
{
            alert(
"请求被终止");
        }

    }

}


//  通知ScriptManager这段脚本已经加载完毕  
if  ( typeof (Sys)  !==   " undefined " ) Sys.Application.notifyScriptLoaded();

WebRequestAndWebRequestExecutor.aspx
<% @ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="WebRequestAndWebRequestExecutor.aspx.cs"
    Inherits
="ClientScripting_SysNet_WebRequestAndWebRequestExecutor" Title="WebRequest和WebRequestExecutor" 
%>

< asp:Content  ID ="Content1"  ContentPlaceHolderID ="ContentPlaceHolder1"  runat ="Server" >
    
< asp:ScriptManagerProxy  ID ="ScriptManagerProxy1"  runat ="Server" >
        
< Scripts >
            
<asp:ScriptReference Path="~/ClientScripting/SysNet/WebRequestAndWebRequestExecutor.js" />
        
</ Scripts >
    
</ asp:ScriptManagerProxy >
    
< p >
        
< input  type ="button"  id ="btnGetWebRequest"  onclick ="GetWebRequest()"  value ="GetWebRequest"   />
    
</ p >
    
< p >
        
< input  type ="button"  id ="btnPostWebRequest"  onclick ="PostWebRequest()"  value ="PostWebRequest"   />
    
</ p >
    
< hr  />
    
< div  id ="resultId"  style ="background-color: Aqua;" >
    
</ div >
</ asp:Content >

运行结果
1、单击“GetWebRequest”按钮
弹出框,信息:当前的URL
显示与“GetTarget.xml”相关的结果

2、单击“PostWebRequest”按钮
可能提示超时,也可能显示与“PostTarget.aspx”相关的结果


WebRequestManagerAndXMLHttpExecutor.js
var  displayElement;

function  pageLoad()
{
    displayElement 
= $get("ResultId");
    
    
// defaultTimeout - 默认超时时间
    Sys.Net.WebRequestManager.set_defaultTimeout(500);
    
    Sys.Net.WebRequestManager.add_completedRequest(OnWebRequestCompleted);
        
    Sys.Net.WebRequestManager.add_invokingRequest
    (
        
function (executor, e)
        
{
            alert('调用请求前');
        }

    );
}


function  GetData()
{
    
// 创建WebRequest对象
    wRequest =  new Sys.Net.WebRequest();

    
// url - 请求的url 
    wRequest.set_url("PostTarget.aspx");
      
    
if (document.all)
    
{
        displayElement.innerText 
= "";
    }

    
else
    
{
        
// Firefox 
        displayElement.textContent = "";
    }

   
    
// invoke() - 执行请求
    wRequest.invoke();
    
    
if (new Date().getSeconds() % 2 == 0)
    
{
        
// executor - 与当前WebRequest对象相关的executor
        var executor = wRequest.get_executor();
     
        
// abort() - 终止请求
        executor.abort();
        
        
// aborted - 与当前executor相关的请求是否被终止
        alert('请求是否被终止:' + executor.get_aborted());
    }

}


//  executor - WebRequestExecutor对象
function  OnWebRequestCompleted(executor, e) 
{        
    
// responseAvailable - 请求是否成功完成
    if(executor.get_responseAvailable()) 
    
{
         
// 显示Web Request的Body                 
        displayElement.innerHTML += "Body:";
        
if (document.all)
        
{
            
// responseData - 响应当前请求的Body文本
            displayElement.innerText += "/r/n" + executor.get_responseData();
        }

        
else
        
{
            
// Firefox
            displayElement.textContent += "/r/n" + executor.get_responseData();
        }

        displayElement.innerHTML 
+= "<br /><br />";
    }

    
else
    
{
        
// timedOut - 请求是否超时
        if (executor.get_timedOut())
        
{
            alert(
"超时");
        }

        
// aborted - 请求是否被终止
        else if (executor.get_aborted())
        
{
            alert(
"请求被终止");
        }

    }

}


function  ExecuteRequest()
{    
    
// 创建WebRequest对象
    var wRequest =  new Sys.Net.WebRequest();
    
    
// url - 请求的url 
    wRequest.set_url("GetTarget.xml");
    
    
// 创建XMLHttpExecutor对象
    var executor = new Sys.Net.XMLHttpExecutor();
   
    
// executor - 与当前WebRequest对象相关的executor
    wRequest.set_executor(executor); 
    
    
// executeRequest() - 执行请求
    executor.executeRequest();

    
// executor - 与当前WebRequest对象相关的executor
    var executor =  wRequest.get_executor();
    
    
// started - 是否已经开始处理请求
    alert("executor是否已经开始处理请求:" + executor.get_started())
}


//  通知ScriptManager这段脚本已经加载完毕  
if  ( typeof (Sys)  !==   " undefined " ) Sys.Application.notifyScriptLoaded();

WebRequestManagerAndXMLHttpExecutor.aspx
<% @ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="WebRequestManagerAndXMLHttpExecutor.aspx.cs"
    Inherits
="ClientScripting_SysNet_WebRequestManagerAndXMLHttpExecutor" Title="WebRequestManager和XMLHttpExecutor" 
%>

< asp:Content  ID ="Content1"  ContentPlaceHolderID ="ContentPlaceHolder1"  runat ="Server" >
    
< asp:ScriptManagerProxy  ID ="ScriptManagerProxy1"  runat ="Server" >
        
< scripts >
            
<asp:ScriptReference Path="~/ClientScripting/SysNet/WebRequestManagerAndXMLHttpExecutor.js" />
        
</ scripts >
    
</ asp:ScriptManagerProxy >
    
< p >
        
< input  type ="button"  id ="btnGetData"  onclick ="GetData()"  value ="GetData"   />
    
</ p >
    
< p >
        
< input  type ="button"  id ="btnExecuteRequest"  onclick ="ExecuteRequest()"  value ="ExecuteRequest"   />
    
</ p >
    
< hr  />
    
< div  id ="resultId"  style ="background-color: Aqua;" >
    
</ div >
</ asp:Content >

运行结果
1、单击“GetData”按钮
可能提示超时,也可能提示终止,也可能显示与“PostTarget.aspx”相关的结果

2、单击“ExecuteRequest”按钮
提示executor已经开始处理请求,显示与“GetTarget.xml”相关的结果


OK
[源码下载]
Simulink仿真模块 - Data Type Conversion Data Type Conversion将输入信号转换为指定的数据类型 在仿真库中的位置为: Simulink / 常用模块 Simulink / Signal Attributes 模型为: 说明 DataTypeConversion模块可将任何 Simulink®数据类型的输入信号转换为您指定的数据类型。 注意 要通过指定模块参数来控制输出数据类型,或者要从下游模块继承数据类型,使用DataTypeConversion模块。要... 阅读详情

相关推荐

安装keil5(MDK)及导入pack包教程

首先说明的是我安装的Keil版本为Keil V5.29.0.0 1、安装软件 右键管理员权限运行安装包 设置安装路径以及pack的存放路径 随意输入First Name和E-mail 安装驱动 完成软件安装,然后可以先关闭弹出的Pack Install(一会再添加) 2、激活一下软件 打开桌面的Keil File → License Management(我之前注册过了) 右...

hrx-@@ 10万+

深入Atlas 系列:客户端网络访问基础结构(上) - WebRequest的工作流程与生命周期...

  ASP.NET AJAX的许多功能会要求异步地访问服务器端,例如访问Web Services,Authentication/Profile Services(事实上和访问Web Services是相同的机制)和Partial Rendering。在ASP.NET AJAX中,所有的这些访问都是通过一个网络访问的基础结构来完成的,无一例外。  我们话不...

weixin_34372728的博客 233

高杂合度基因组组装实战:Hifiasm参数调优与purge_dups过滤效果对比(附猪毛菜案例)

本文深入探讨了高杂合度基因组组装中Hifiasm参数调优与purge_dups过滤的实战效果对比,通过猪毛菜案例详细解析了两种方法的适用场景与优化策略。文章重点分析了purge_dups在contig过滤中的显著效果,为基因组组装提供了关键的技术参考。

weixin_29232121的博客 495

系统地学习ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor)

[源码下载]系统地学习ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor) 作者:webabcd介绍学习一下Sys.Net命名空间下与web请求相关的类,WebRequestManager、WebRequest、WebRequestExe

飘逸软件技术信息服务网 748

2.6 SST的核心性能指标体系

本文构建了固态变压器(SST)的核心性能指标体系,涵盖电气性能、可靠性、经济性和环境适配性四大类指标。电气性能指标包括运行效率(≥97%)、功率密度(≥900kVA/m³)、谐波畸变率(≤3%)等关键参数;可靠性指标设定MTBF≥43800h、年均故障率≤1.2次/年等标准;经济性指标对比分析了初始购置成本(45-55万元)和全生命周期成本(48-55万元);环境适配性指标则明确了温度、海拔等工况要求。该体系采用量化公式和国标限值,为SST的性能测试、选型和优化提供了统一标准。

技术工作者 597

Word公式批量转MathType终极指南:解决omml2mml.xsl缺失与格式调整难题

本文提供Word公式批量转MathType的终极解决方案,重点解决常见的omml2mml.xsl文件缺失问题,并详细讲解批量转换与格式调整技巧。通过补全文件路径、分批次转换及样式预设等方法,大幅提升学术论文公式编辑效率,适用于Office 2016及以上版本。

weixin_28419039的博客 1349

新瓶旧酒ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager)

[索引页][×××] 新瓶旧酒ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor)作者:webabcd介绍学习一下Sys.Net命名空间下与web请求相关的类,WebRequestManager、WebRequest、We...

weixin_34409822的博客 89

C++大牛的博客

1. C++大牛的博客     Bjarne Stroustrup的博客: Bjarne Stroustrup’s Homepage Bjarne Stroustrup,不认识的可以去面壁了,没有他,就没有我们现在的饭碗。Bjarne Stroustrup是丹麦人,目前任教于TAMU。他的Homepage和他的书籍The C++ Programming Language一样

程序猿老樊的博客 6244

深入Atlas系列:客户端网络访问基础结构(上) - WebRequest的工作流程与生命周期...

  ASP.NET AJAX的许多功能会要求异步地访问服务器端,例如访问Web Services,Authentication/Profile Services(事实上和访问Web Services是相同的机制)和Partial Rendering。在ASP.NET AJAX中,所有的这些访问...

chuifuhuo6864的博客 153

npm install failed如何办?

上网搜索,说是网络配置不太对。按照如下几步,保证解决问题。在运行npm install指令时,出现如下错误。

xiezhipu的博客 879

【Docker】常见容器问题解决#OCI runtime create failed: container_linux.go:349: starting container process

ERROR: for nginx Cannot start service nginx: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\\"/data/docker-compose/n

liu_chen_yang的博客 5527

系统地学习ASP.NET AJAX(8) - 客户端脚本编程(Sys.Net命名空间下的WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpE...

     摘要: 学习一下Sys.Net命名空间下与web请求相关的类,WebRequestManager、WebRequest、WebRequestExecutor和XMLHttpExecutor  阅读全文webabcd 2007-06-25 08:55 发表评论

yanhuanwang 127

ESP32-CAM 赋能 AI 视觉巡检小车:自主避障与目标追踪实现全解析

本文基于 ESP32-CAM 实现了低成本 AI 视觉巡检小车的核心功能,硬件成本<100 元,兼顾自主避障与目标追踪。算法升级:移植 YOLOv5nano 量化模型(INT8),提升目标检测精度(如识别巡检场景中的 “异常物体”“人员”);无线拓展:通过 MQTT 协议将巡检图像、距离数据上传到阿里云 / 腾讯云,实现远程监控;多传感器融合:增加温湿度(DHT11)、红外测温(MLX90614)模块,扩展巡检维度;路径规划:结合 SLAM 算法,实现自主建图与路径巡检。

weixin_42300449的博客 367

ASP.NET AJAX客户端脚本编程类介绍

1、Sys.Net.WebRequestManager Class·add_completedRequest(handler); - 添加请求完成后的处理器·remove_completedRequest(handler); - 移除请求完成后的处理器·add_invokingRequest(handler); - 添加处理调用请求的处理器·remove_invokingRequest(han...

ruilinruirui 69

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

精进不休 .NET 4.0 (3) - asp.net 4.0 新特性之动态数据(Dynamic Data)增强, AJAX增强; IDE之Visual Studio 2010增强

[源码下载]精进不休 .NET 4.0 (3) - asp.net 4.0 新特性之动态数据(Dynamic Data)增强, AJAX增强; IDE之Visual Studio 2010增强作者:webabcd介绍asp.net 4.0 的新增功能 EnableDynamicData - 启用 Dynamic Data 的功能  D

webabcd的专栏 1347

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

[翻译]开发一个自己的HTML在线编辑器(一)

原文地址:http://aspalliance.com/1092_Rich_Text_Editor_Part_I[原文源码下载]开发一个自己的HTML在线编辑器(一)摘要在本文中,Haissam Abdul Malak将给大家详细介绍如何使用javascript开发一个HTML在线编辑器,它可以应用于web应用程序中,特别是论坛,社区和博客。这个编辑器支持基于XHTML创建文本的功能。原文

webabcd的专栏 904

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

[翻译]开发一个自己的HTML在线编辑器(二)

原文地址:http://aspalliance.com/1156_Rich_Text_Editor__Part_II[原文源码下载][翻译]开发一个自己的HTML在线编辑器(二)原文发布日期:2007.02.27作者:Haissam Abdul Malak翻译:webabcd文章内容介绍javascrit文件后置代码结论介绍在我们一起研究了如何开发一个HTML在线编辑器后(第一部分在这里

webabcd的专栏 788

新瓶旧酒ASP.NET AJAX(9) - 客户端脚本编程(Sys.Net命名空间下的WebServiceProxy、WebServiceError、Generated Proxy Classes以及调用WebService、PageMethod)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(9) - 客户端脚本编程(Sys.Net命名空间下的WebServiceProxy、WebServiceError、Generated Proxy Classes以及调用WebService、PageMethod) 作者:webabcd介绍使用ASP.NET AJAX调用WebService(简单类

webabcd的专栏 773

[翻译]ASP.NET AJAX之内部揭秘

原文地址:http://www.codeproject.com/KB/ajax/aspnetajaxtips.aspx[原文源码下载][翻译]ASP.NET AJAX之内部揭秘原文发布日期:2006.12.22作者:About Omar Al Zabir翻译:webabcd审校:Tony Qu 介绍微软最近发布了ASP.NET AJAX的Be

webabcd的专栏 754

[翻译]ASP.NET AJAX调用Web Service

原文地址:http://www.developer.com/net/asp/article.php/3657826[原文源码下载]ASP.NET AJAX调用Web Service原文发布日期:2007.02.08作者:Bipin Joshi翻译:webabcd介绍尽管AJAX是种客户端技术,但实际上的开发过程,它经常要调用一个服务器端的过程。通常,网站上的数据是存放在一个关系型数据库中,

webabcd的专栏 713

新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(ScriptManager、ScriptManagerProxy、UpdatePanel、UpdateProgress和Timer)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(1) - 简单地过一下每个控件(ScriptManager、ScriptManagerProxy、UpdatePanel、 UpdateProgress和Timer)作者:webabcd介绍ASP.NET AJAX就5个控件,分别是ScriptManager、ScriptManagerProxy

webabcd的专栏 616

新瓶旧酒ASP.NET AJAX(6) - 客户端脚本编程(Sys.WebForms命名空间下的类Sys.Serialization命名空间下的类)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(6) - 客户端脚本编程(Sys.WebForms命名空间下的类Sys.Serialization命名空间下的类) 作者:webabcd介绍Sys.WebForms命名空间下的类都是与局部刷新相关的类。PageRequestManager类,其中有5个事件:initializeRequest事件、b

webabcd的专栏 614

新瓶旧酒ASP.NET AJAX(7) - 客户端脚本编程(Sys命名空间下的类)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(7) - 客户端脚本编程(Sys命名空间下的类) 作者:webabcd介绍Sys命名空间是Microsoft AJAX Library的根命名空间。本文主要学习一下其中的Application类、ApplicationLoadEventArgs类、CultureInfo类和StringBuilder

webabcd的专栏 602

新瓶旧酒ASP.NET AJAX(4) - 客户端脚本编程(JavaScript基本类型扩展 - JavaScript Base Type Extensions)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(4) - 客户端脚本编程(JavaScript基本类型扩展 - JavaScript Base Type Extensions)作者:webabcd介绍Microsoft AJAX Library中的JavaScript基本类型扩展是基于ECMAScript (JavaScript)对象的。关于Ja

webabcd的专栏 549

新瓶旧酒ASP.NET AJAX(2) - 客户端脚本编程(命名空间、类、成员、接口、继承、枚举)

[索引页][源码下载]新瓶旧酒ASP.NET AJAX(2) - 客户端脚本编程(命名空间、类、成员、接口、继承、枚举)作者:webabcd介绍Microsoft AJAX Library提供了对JavaScript的扩展和对面向对象的支持,并且与.NET框架非常相似。我们来看一下如何实现命名空间、类、成员、接口、继承和枚举。关键1、Sy

webabcd的专栏 545
上一篇: [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)
下一篇: [翻译]在SQL Server中使用CLR调用.NET方法
webabcd
博客等级 码龄17年 28粉丝 911原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值