Я пытаюсь вызвать через ajax WebMethod, размещенный на традиционной странице кода ASP.Net WebForm. Вот код для WebMethod:JSON WebMethod не работает в Sitefinity
[WebMethod]
public static object States()
{
StateProvince[] states = new StateProvince[] { };
ApplicationServiceClient proxy = null;
try
{
proxy = new ApplicationServiceClient();
states = proxy.GetStateProvinces();
}
finally
{
CloseServiceProxy(proxy);
}
return states;
}
WebMethod прекрасно работает в моей автономной среде разработки или развертывания нормально IIS, но когда я раскрываю страницу ASPX в Sitefinity, я получаю следующее исключение, когда это называется:
Ошибка сервера в приложении «/».
Неизвестный веб-метод States.aspx. Имя
Параметра: имяМетод
Я не уверен, если Sitefinity является угоном URL и после ожидания «.aspx», или то, что происходит здесь.
Вот JQuery вызов, вызов веб-метод:
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Regions.aspx/States",
data: "{}",
success: function(data) {
// implementation omitted
},
error: function(xhr, msg) {
alert(xhr.responseText);
}
});
Я могу повторить эту проблему путем размещения запроса вручную с помощью Fiddler.
Опять же, это прекрасно работает везде, кроме случаев, когда оно развернуто на Sitefinity. У кого-нибудь есть мысли?