Ok guys. I found the problem. When an ASMX file is created, you must read all comments lines. To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
//[System.Web.Script.Services.ScriptService]
So the GetStock function is:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string GetStock(string variant_id)
{
SendEmail.SendErrorMail("in"+ variant_id);
try
{
ProductVariant variant = ProductVariantManager.GetProductVariantByID(Convert.ToInt32(variant_id));
return variant.Stock.ToString();
}
catch (Exception ex)
{
return ex.Message;
}
}
and the Ajax code is:
var url = "http://www.mywebsite.ro/ServiceGetStock.asmx";
$.ajax({
type: "POST",
url: url + "/GetStock",
data: "{variant_id:'1'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccessCall,
error: OnErrorCall
});
function OnSuccessCall(response) {
alert(response.d);
}
function OnErrorCall(response) {
alert(response.status + " " + response.statusText);
}
Problem solved! Thanks all for tips.......
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…