I need to call a WCF service from my webpage. The method in service uses generic list as an argument,i need to know how to frame the ajax query?
method:
public List<FileListEntity> ListLogFiles(string status, List<FileListEntity> fileList)
{
.............//implementation....
return fileList;
}
1st time when method is called the 'fileList' is passed as null, this method populates the list and the send it back to the website. 2nd time the website sends the received fileList along with some status back to the service.
ajax query:
var status = defineStatus();
var value;
var jsonObj;
function callLogService(){
debugger;
if (value == null) {
jsonObj = "null";
}
else {
jsonObj=value;
}
$.ajax({
type: "POST",
url: "http://localhost:56256/SearchService.svc/ListLogFiles",
data: '{"status":"'+ status+'","fileList":'+jsonObj+' }',
crossDomain: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
processdata: true,
success: function (response) {
value = response;
display(value);
debugger;
alert("Success");
//debugger;
},
error: function () {
alert("An error has Occured, Please try refreshing !");
}
});
}
This works 1st time when jsonObj is null but doesn't works the second time when jsonObj contains value. It says:
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
I think that the argument is not passed correctly during second time. Any idea? how to resolve.