i have following code in json/jquery/grid connectivityand add webserevice and have following class of websericeCode:<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="json.aspx.cs" Inherits="LINQ.json" %> <!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>Untitled Page</title> <script type="text/javascript" src="jquery.min.js"></script> <script type="text/javascript" src="jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function () { // function () { $.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: "Service1.asmx/BindDatatable", async: true, cache: false, data: "{}", dataType: "json", success: function (data) { for (var i = 0; i < data.d.length; i++) { $("#gvDetails").append("<tr><td>" + data.d[i].OfficeName + "</td><td>" + data.d[i].City + "</td><td>" + data.d[i].Country + "</td></tr>"); } }, error: function (result) { alert(result.toString()); } }); $('#btnSearch').click ( function () { var searchtext = $("#txtSearch").val(); alert(searchtext); $.ajax( { type: "POST", url: "Gridview.aspx/BindSearchDatatable", //data: "{officename : '"+searchtext+"'}", data: JSON.stringify({ officename: searchtext }), contentType: "application/json; charset=utf-8", dataType: "json", async: true, cache: false, success: function (data) { for (var i = 0; i < data.d.length; i++) { $("#gvDetails").append("<tr><td>" + data.d[i].OfficeName + "</td><td>" + data.d[i].City + "</td><td>" + data.d[i].Country + "</td></tr>"); } }, error: function (x, e) { alert("The call to the server side failed. " + x.responseText); } } ); return false; } ); // } }); </script> </head> <body> <form id="form1" runat="server"> <table> <tr> <td> <asp:TextBox ID="txtSearch" runat="server"></asp:TextBox> </td> <td> <asp:Button ID="btnSearch" runat="server" Text="Search" /> </td> </tr> <tr> <td colspan="2"> <asp:GridView ID="gvDetails" runat="server"> <HeaderStyle BackColor="#DC5807" Font-Bold="true" ForeColor="White" /> </asp:GridView> </td> </tr> </table> </form> </body> </html>and another classCode:public class Service1 : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World"; } [WebMethod] public static OfficeDetails[] BindDatatable() { DataTable dt = new DataTable(); List<OfficeDetails> details = new List<OfficeDetails>(); dt.Columns.Add("OfficeName", typeof(string)); dt.Columns.Add("City", typeof(string)); dt.Columns.Add("Country", typeof(string)); dt.Rows.Add("OfficeName", "Emmaculate"); dt.Rows.Add("City", "khi"); dt.Rows.Add("Country", "pak"); foreach (DataRow dtrow in dt.Rows) { OfficeDetails Office = new OfficeDetails(); Office.OfficeName = dtrow["OfficeName"].ToString(); Office.City = dtrow["City"].ToString(); Office.Country = dtrow["Country"].ToString(); details.Add(Office); } //using (SqlConnection con = new SqlConnection(@"Data Source=kartikpatel\SQLEXPRESS;Initial Catalog=master;Integrated Security=True")) //{ // using (SqlCommand cmd = new SqlCommand("select OfficeName,City,Country from Office", con)) // { // con.Open(); // SqlDataAdapter da = new SqlDataAdapter(cmd); // da.Fill(dt); // foreach (DataRow dtrow in dt.Rows) // { // OfficeDetails Office = new OfficeDetails(); // Office.OfficeName = dtrow["OfficeName"].ToString(); // Office.City = dtrow["City"].ToString(); // Office.Country = dtrow["Country"].ToString(); // details.Add(Office); // } // } //} return details.ToArray(); } }Code:public class OfficeDetails { public string OfficeName { get; set; } public string City { get; set; } public string Country { get; set; } }
the only thing i m doing is to bind grid with data return from webserice method
but wheni execute this code ..it gives me an error in alert box as [object object]
can any body help me !!
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public static OfficeDetails[] BindDatatable()
{
DataTable dt = new DataTable();
List<OfficeDetails> details = new List<OfficeDetails>();
dt.Columns.Add("OfficeName", typeof(string));
dt.Columns.Add("City", typeof(string));
dt.Columns.Add("Country", typeof(string));
dt.Rows.Add("OfficeName", "Emmaculate");
dt.Rows.Add("City", "khi");
dt.Rows.Add("Country", "pak");
foreach (DataRow dtrow in dt.Rows)
{
OfficeDetails Office = new OfficeDetails();
Office.OfficeName = dtrow["OfficeName"].ToString();
Office.City = dtrow["City"].ToString();
Office.Country = dtrow["Country"].ToString();
details.Add(Office);
}
//using (SqlConnection con = new SqlConnection(@"Data Source=kartikpatel\SQLEXPRESS;Initial Catalog=master;Integrated Security=True"))
//{
// using (SqlCommand cmd = new SqlCommand("select OfficeName,City,Country from Office", con))
// {
// con.Open();
// SqlDataAdapter da = new SqlDataAdapter(cmd);
// da.Fill(dt);
// foreach (DataRow dtrow in dt.Rows)
// {
// OfficeDetails Office = new OfficeDetails();
// Office.OfficeName = dtrow["OfficeName"].ToString();
// Office.City = dtrow["City"].ToString();
// Office.Country = dtrow["Country"].ToString();
// details.Add(Office);
// }
// }
//}
return details.ToArray();
}
}




Reply With Quote
