All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
C#中MaskedTextBox控件的用法以及实例
偷懒秘笈之一键生成,Ajax,Control,Toolkit,标记_[Asp.Net教程]
使用SQLSERVER的扩展存储过程实现远程备份与恢复_[SQL Server教程]
SQL,Server开发的二十一条军规_[SQL,Server教程]
ASP.NET中根据XML动态创建使用WEB组件_[Asp.Net教程]
AJAX的jQuery实现入门(二)_[AJAX教程]
ASP.NET查询ACCESS数据库的内容并在DATAVIEW中显示出来_[Asp.Net教程]
SQL循序渐进(18)索引_[SQL,Server教程]
从,PHP,迁移到,ASP.NET(2)_[Asp.Net教程]
ASP.NET技巧:使用Gridview绑定数据库中的图片_[Asp.Net教程]
Reading number is top 10 pictures
奇趣的世界记录2
含苞欲放的素颜美少女1
梦幻的风景
西游日记4
Extremely rare TianShan Mountains snow lotus1
The sixties of the last century, China is such a kill pig
Beautiful Japanese beauty(漂亮的日本美女)
传销的好处
湖南中医院的养生八图
Summer is most suitable for young people to travel in China9
Download software ranking
金山office2007
C++教程第四版
Tram sex maniac 2 (H) rar bag9
天龙八部十二宫服务端
The Bermuda triangle1
Boxer Classic video1
Unix video tutorial7
Ashlynn Video5
Call Of Duty2
Tram sex maniac 2 (H) rar bag17
aaa published in(发表于) 2013/12/18 7:52:49 Edit(编辑)
ASP.NET,2.0,AJAX中Webservice调用方法示例_.net资料_编程技术

ASP.NET,2.0,AJAX中Webservice调用方法示例_.net资料_编程技术

ASP.NET 2.0 AJAX中Webservice调用方法示例_.net资料_编程技术-你的首页-uuhomepage.com

ASP.NET 2.0 AJAX中能够在客户端js中很方便地调用服务器Webservice,以下为一些调用的示例。笔者安装的ASP.NET 2.0 AJAX


版本为AJAX November CTP。


三个示例分别为:
1 带参数的WS方法
2 不带参数的WS方法
3 参数类型为DataTable的WS方法


一、WebMethod
注意要点:
1 WebMethod类需要添加命名空间 Microsoft.Web.Script.Services,此空间需要引用Microsoft.Web.Preview.dll
2 类声明加入标签 [ScriptService]
3 在Asp.net 2.0里可以直接用DataTable作为返回类型了,但是需要在Web.config文件添加序列化转换器的属性。DataSet、DataTable、DataRow均有转换器


WEB服务1:WS1


using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using Microsoft.Web.Script.Services;
using System.Data;
/**////


/// WS1 的摘要说明
///

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class WS1 : System.Web.Services.WebService {


public WS1 () {


//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}


[WebMethod]
public string ServerTime()
{
return String.Format("now: {0}", DateTime.Now);
}


[WebMethod]
public DataTable GetDataTable()
{
DataTable dt = new DataTable("Person");


dt.Columns.Add(new DataColumn("Name", typeof(string)));
dt.Columns.Add(new DataColumn("LastName", typeof(string)));
dt.Columns.Add(new DataColumn("Email", typeof(string)));


dt.Rows.Add("kui", "he", "hekui168@163.com");
dt.Rows.Add("ren", "chao", "chaoren888@163.com");


return dt;
}
}



WEB服务2:WS


using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using Microsoft.Web.Script.Services;


/**////


/// WS 的摘要说明
///

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConssssformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class WS : System.Web.Services.WebService {


public WS () {


//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}


[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public string HelloWorld(String query)
{
string inputString = Server.HtmlEncode(query);
if (!String.IsNullOrEmpty(inputString))
{
return String.Format("hello, {0}. ", inputString);
}
else
{
return "query string is null or empty";
}
}


}



二、前台页面:
注意要点:
需要使用的后台WebService的方法均设置在如下位置








Default页面:


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


http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
http://www.w3.org/1999/xhtml">

三、javascript程序:
注意要点:
AJAX November CTP 需要用 eval() 方法将其转换成一个DataTable对象(并且要裁掉最前面的"("),而AJAX December CTP 支持以下方法转换“Sys.Preview.Data.DataTable.parseFromJson(result)”


function dd()
{
WS.HelloWorld(
'hekui',
function(result)
{
alert(result);
}
);
WS1.ServerTime(
function(result)
{
alert(result);
var divTime = document.getElementById("time");
divTime.innerHTML = result;
}
);
WS1.GetDataTable(
function(result)
{
// 获取到下拉框控件
var List = document.getElementById("ddl1");

//AJAX November CTP 需要用 eval() 方法将其转换成一个DataTable对象(并且要裁掉最前面的"(")
var Text= result.dataArray.substring(0,result.dataArray.length -1);
var Table = eval( Text);

//AJAX December CTP 支持以下方法转换
// var Table = Sys.Preview.Data.DataTable.parseFromJson(result);

//清除下拉框原有列表项
for (x=List.options.length-1; x > -1; x--)
{
List.remove(0);
}

//从获取的DataTable添加数据到下拉框列表项
for (x=0; x < Table.length; x++ )
{
//获取每一行
var Row = Table[x];
//创建一个列表项
var option = document.createElement("option");
//列表项显示文本赋值
option.text = Row.Name + " " + Row.LastName;
//列表项选项值赋值
option.value = Row.Email;


//判断浏览器类型,进行项目添加
if ( window.navigator.appName.toLowerCase().indexOf("microsoft") > -1)
List.add(option);
else
List.add(option, null);
}
}
);
}





添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.