Я пытаюсь вызвать веб-сервис ASP с использованием jQuery со сложным объектом в качестве ввода.Ошибка вызова ASP.net webservice с jQuery
Вот мои Jquery сноска:
request: function (url, method, data) {
var json = JSON.stringify(data);
return $.ajax({
url: url,
type: method,
data: json,
error: ErrorHelpers.printErrorToConsole,
dataType: 'json',
contentType: 'application/json',
processData: false
});
}
JSON передается в выглядит следующим образом:
{
"search": {
"WarehouseId": "",
"AuctionId": "",
"Barcode": "",
"Name": "",
"CategoryId": "",
"Description": "",
"ManufacturerId": "",
"StatusId": "",
"StatusOperator": "",
"HasPhoto": "",
"DateReceived": "",
"SellerAdministrativeArea": "",
"SellerId": "",
"IsApproved": "",
"Keyword": "",
"SortBy": "",
"RowStart": "",
"RowLimit": "10"
}
}
и мой веб определение метода выглядит следующим образом:
[WebMethod(EnableSession = true)]
[ScriptMethod(UseHttpGet = true)]
public List<ClientInventory> GetInventory(string search)
{ //code
}
Значит ли кто-нибудь знает, почему это ошибка? Вот ответ я получаю:
{ "Сообщение": "Invalid веб-службы вызова, отсутствует значение для параметра: \ u0027search \ u0027.", "StackTrace":»в System.Web.Script. Services.WebServiceMethodData.CallMethod (Объект мишень, IDictionary
2 parameters)\r\n at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary
2 параметра) \ г \ п на System.Web.Script.Services.RestHandler.InvokeMethod (HttpContext контекст, WebServiceMethodData methodData, IDictionary`2 rawParams) \ г \ п на System.Web.Script.Services.RestHandler.ExecuteWebServiceCall (контекст HttpContext , WebServiceMethodData methodData) "," Ex ceptionType ":" System.InvalidOperationException "}
Как вы строите строку/параметр URL? –
жестко запрограммирован. /api/blah.asmx/GetInventory – khalid13
Ожидается строка, вы передаете объект поиска? Что должен делать ваш код со всеми этими данными? – christiandev