转:
http://blog.csdn.net/greatverve/archive/2009/03/13/3988775.aspx
http://book.51cto.com/art/200906/129728.htm
WebService1.asmx
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
/// <summary>
/// WebService1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class WebService1 : System.Web.Services.WebService
{
public WebService1()
{
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public System.Data.DataTable GetDT()
{
DataTable dt = new DataTable();
dt.TableName = "Accounts";
dt.Columns.Add("id");
dt.Columns.Add("name");
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr["id"] = i.ToString();
dr["name"] = "name" + i.ToString();
dt.Rows.Add(dr);
}
return dt;
}
[WebMethod]
public System.Data.DataSet GetDS()
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.TableName = "Accounts";
dt.Columns.Add("id");
dt.Columns.Add("name");
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr["id"] = i.ToString();
dr["name"] = "name" + i.ToString();
dt.Rows.Add(dr);
}
ds.Tables.Add(dt);
return ds;
}
}
==============================================================================
添加Web Service引用。在项目上单击鼠标右键,在弹出的快捷菜单中选择"添加Web 引用"命令,如图7-6所示,弹出"添加Web引用"对话框
==============================================================================
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class test6 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Bind();
}
private void Bind()
{
localhost.WebService1 service = new localhost.WebService1();
this.GridView1.DataSource = service.GetDS();
//不成熟的理解:DataTable无法序列化,不可以通过web service传递
//this.gvShow.DataSource = service.GetDT();
this.GridView1.DataBind();
Response.Write(service.HelloWorld());
}
}
http://book.51cto.com/art/200906/129728.htm
WebService1.asmx
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
/// <summary>
/// WebService1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class WebService1 : System.Web.Services.WebService
{
public WebService1()
{
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public System.Data.DataTable GetDT()
{
DataTable dt = new DataTable();
dt.TableName = "Accounts";
dt.Columns.Add("id");
dt.Columns.Add("name");
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr["id"] = i.ToString();
dr["name"] = "name" + i.ToString();
dt.Rows.Add(dr);
}
return dt;
}
[WebMethod]
public System.Data.DataSet GetDS()
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.TableName = "Accounts";
dt.Columns.Add("id");
dt.Columns.Add("name");
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr["id"] = i.ToString();
dr["name"] = "name" + i.ToString();
dt.Rows.Add(dr);
}
ds.Tables.Add(dt);
return ds;
}
}
==============================================================================
添加Web Service引用。在项目上单击鼠标右键,在弹出的快捷菜单中选择"添加Web 引用"命令,如图7-6所示,弹出"添加Web引用"对话框
==============================================================================
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class test6 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Bind();
}
private void Bind()
{
localhost.WebService1 service = new localhost.WebService1();
this.GridView1.DataSource = service.GetDS();
//不成熟的理解:DataTable无法序列化,不可以通过web service传递
//this.gvShow.DataSource = service.GetDT();
this.GridView1.DataBind();
Response.Write(service.HelloWorld());
}
}