Overview
This Example Shows how to create a webservice which returns a DataSet and a Client Which displays the DataSet in a Grid.
Description
This Example Shows how to create a webservice which returns a DataSet and a Client Which displays the DataSet in a Grid.
Source Code
*** WEBSERVICE
Open a New WebService project Lets Call It WebService1
Create a Stock Table on SQL Desktop Edition with the Following Fields
Stock Code,Description,Price(Can be anything you want), and Add some dummy data.
Create a Method as the Code Below
// Put the Code Below in the using Section
using System.Data.SqlClient ;
// this is the Actual Web Method
[WebMethod]
public DataSet GetData()
{
// First Create a New Connection
System.Data.SqlClient.SqlConnection sqlConnection1 = new System.Data.SqlClient.SqlConnection();
// Now Pass a Connection String To the Connection
sqlConnection1.ConnectionString = "data source=MyServer-001\\SqlServerName;initial catalog=Stock;integrated securi" +
"ty=SSPI;persist security info=False;workstation id=MyServer-001;packet size=40" +
"96";
// Now the Select statement you want to run
string select ="select * from stock ";
// Create an Adapter
SqlDataAdapter da = new SqlDataAdapter(select,sqlConnection1);
// Create a New DataSet
DataSet ds = new DataSet();
// Fill The DataSet With the Contents of the Stock Table
da.Fill(ds , "stock");
// Now Return ds which is a DataSet
return(ds);
}
*****CLIENT
Now For the Client
- Open a New Window form Project and Call it WindowsApplication1
- Add a DataGrid to the Form. Rename DataGrid1 to dataGrid
- Add a Command Button
- Now to add a Web reference do the Following.
In the Solution Explorer Right Click on you application name and Click Add Web Reference.
A Form is brought up. In the Window Type your Url it would Be
http://localhost/webservice1/service1.asmx
Now Click on Add Reference Button. you will be brought back to your solution explorer.
Now in the solution explorer under web references Rename localhost to WebDataSet
Now in the Using Section add the Foll Code
using WindowsApplication1.WebDataSet;
Now in the Button click event add the foll Code
private void button1_Click(object sender, System.EventArgs e)
{
// Init MyService to the Web Service
Service1 MyService = new Service1();
// Call the GetData method in the Web Service
DataSet ds = MyService.GetData();
// Bind the DataSet to the Grid
dataGrid.SetDataBinding(ds , "stock");
}