刚刚研究下WebService,先做个引数据库表数据的实例.
我的WebService.cs代码:
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
using System.Data.SqlClient;
/// <summary>
/// Summary description for WebService
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class WebService : System.Web.Services.WebService
{
public WebService()
{
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
//数据库连接字符串
private string sqlConnectionCommand = System.Configuration.ConfigurationManager.AppSettings["ConnectionString"];
//private string dataTableName = "Test";
private string id = "";
private string name = "";
[WebMethod]
public DataTable GetInfo()
{
SqlConnection sqlConnection = new SqlConnection(sqlConnectionCommand);
sqlConnection.Open();
SqlCommand sqlCommand = new SqlCommand();
sqlCommand.Connection = sqlConnection;
sqlCommand.CommandText = "GetTest";
sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;
SqlDataReader sqlDataReader = sqlCommand.ExecuteReader();
DataTable dt = new DataTable();
dt.Columns.Add("ID", typeof(string));
dt.Columns.Add("Name", typeof(string));
dt.TableName = "TestDate";
while (sqlDataReader.Read())
{
id = Convert.ToString(sqlDataReader["ID"]);
name = Convert.ToString(sqlDataReader["Name"]);
dt.Rows.Add(id, name);
}
sqlDataReader.Close();
sqlCommand.Dispose();
sqlConnection.Close();
return dt;
}
}
新建一个网站,在此网站添加Web引用,引入上面的WebService.asmx地址,在后台页面就可以实例化它并引用了.
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 Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
//add:Web引用名称
add.WebService web = new add.WebService();
DataTable dt = web.GetInfo();
GridView1.DataSource = dt;
GridView1.DataBind();
}
}