私は成功せずにマスターページからメソッドをAjaxで呼び出そうとしています:
マスターページ
$(function ListaCategorias() {
var pageUrl = '<%=ResolveUrl("~/WebService/MenuEsquerdo.asmx")%>';
$.ajax({
type: "POST",
url: pageUrl + '/ListaCategoriasMenu',
data: "{}",
contentType: "application/json; charset=utf-8",
dataTyle: "json",
async: false,
error: function (jqXhR, textStatus, errorThrown) { alert(errorThrown); },
success: function (data) {
var Categorias = data.d;
var counter = 0;
aCategorias = [];
//Carrega as Categorias
$.each(Categorias, function (index, categorias) {
aCategorias[counter] = [
categorias.cat_id, categorias.cat_descricao, categorias.cat_total_anuncios
];
counter++;
});
}
});
});
メニューEsquerdo.asmx
/// <summary>
/// Summary description for MenuEsquerdo
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
[System.Web.Script.Services.ScriptService]
public class MenuEsquerdo : System.Web.Services.WebService
{
[WebMethod]
//[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static IList ListaCategoriasMenu()
{
tab_categorias tabCategorias = new tab_categorias { cat_ativo = true, cat_deletado = false };
var listCategorias = tabCategorias.ListaCategoriasMenu();
return listCategorias;
}
}
「Internal Server Error」というエラー メッセージが表示されます。
私は何を間違っていますか?
WebService を使用して考えたメニューをロードしたいのですが、イベント ハンドラーのようなより良いオプションを知っていれば、私は心を開いています。
ありがとう。
アップデート
ユーザー コントロールも使用しようとしましたが、返されたエラー メッセージは Forbbiden です。