Passing an JSON array to MVC Web API via GET
No, don't try to be sending JSON in a GET request. Use JSON with other verbs which have body, such as POST and PUT.
Do it the standard way, by decorating your action parameter with the [FromUri]
attribute:
public IList<Country> GetCountryList([FromUri] List<long> idList){ ...}
and then just trigger the AJAX request:
$.ajax({ url: 'api/v1/util/CountryList', type: 'GET', data: { idList: [1, 2, 3] }, traditional: true, success: function (result) { console.log(JSON.stringify(result)); }});
Further recommended reading for you about how the model binding in the Web API works:
http://www.asp.net/web-api/overview/working-with-http/sending-html-form-data,-part-1
**Following are two parameter Enum and objSearch **
var Enum = "ABCD";
var objSearch = [ {"Name":"Navjot Angra","Age":23}, {"Name":"Nav","Age":22}];
//this is ajax method
$.ajax({
type: "GET", var GatwayUrl ='http//2937/' (//Your url) url: GatwayUrl + 'api/Certificate/GetDetail/?Enum=' + Enum +'+&objSearch='+ JSON.stringify(objSearch), contentType: "application/json; charset=utf-8", dataType: "json", success: function (result) { if (result) { alert("Your Code"); } }});
//this part is web api part
[HttpGet]
public IHttpActionResult Fetch([FromUri]string Enum, [FromUri]string objSearch){
IHttpActionResult action=null;return action;
}