Click here to Skip to main content
15,881,516 members
Articles / Server
Article

Calling a Page method with complex parameter using jason.stringfy() method

Rate me:
Please Sign up or sign in to vote.
0.00/5 (No votes)
11 Oct 2013CPOL1 min read 6K   1  
Most of the time when i tried to search for executing server side static page methods using jquery I came across simple example which explained how

This articles was originally at wiki.asp.net but has now been given a new home on CodeProject. Editing rights for this article has been set at Bronze or above, so please go in and edit and update this article to keep it fresh and relevant.

Most of the time when i tried to search for executing server side static page methods using jquery I came across simple example which explained how to call page methods which took parameters of simple types like string and integer.However none of the example explained how we can send complex object to the page method.

Consider this scenario i have a Page method which take in a parameter of type Employee and returns returns the corresponding Manager some thing like this.

[System.Web.Services.WebMethod()]
public static Manager ShowGetmanager(Employee emp)
{
Manager oManager = null;
{
// some logic to get manager
}
return oManager;
}

How i want to send in the page method a parameter of type Employee from my javascript.Some how as I explained before i was not able to figure out a way of sending this complex type since all the example i came across were using he parameter as string.Then i stumbled upon a method called JSON.stringfy() this is what i Did to send the complex obejct to the server page method

    function GetData() {
       var DTO = { "emp": { "__type": "ResearchWebApplication.Employee", "Name": "Amit", "ID": 1, "Telephone": null} }
       $.ajax({
           type: "POST",
           contentType: "application/json; charset=utf-8",
           url: "Default.aspx/ShowGetmanager",
           data: JSON.stringify(DTO), 
           dataType: "json",
           success: function(msg) {
           $('div#OutputDiv').append(JSON.stringify(msg));
              alert(msg.d);
          }, error: HandleError
       });

   }

   function HandleError(jqXHR, textStatus, errorThrown) {
       $('div#OutputDiv').append(JSON.stringify(errorThrown));
   }

 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United States United States
The ASP.NET Wiki was started by Scott Hanselman in February of 2008. The idea is that folks spend a lot of time trolling the blogs, googlinglive-searching for answers to common "How To" questions. There's piles of fantastic community-created and MSFT-created content out there, but if it's not found by a search engine and the right combination of keywords, it's often lost.

The ASP.NET Wiki articles moved to CodeProject in October 2013 and will live on, loved, protected and updated by the community.
This is a Collaborative Group

754 members

Comments and Discussions

 
-- There are no messages in this forum --