web-dev-qa-db-ja.com

ASP.NET jQueryエラー:不明なWebメソッド

JQueryからASP.NETページメソッドを呼び出そうとするのはこれが初めてです。 Webメソッドが見つからないというresponseTextメッセージでステータス500エラーが発生します。これが私のjQuery $ .ajax呼び出しです:

function callCancelPlan(activePlanId, ntLogin) {
    var paramList = '{"activePlanId":"' + activePlanId + '","ntLogin":"' + ntLogin + '"}';
    $.ajax({
        type: "POST",
        url: "ArpWorkItem.aspx/CancelPlan",
        data: paramList,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function() {
            alert("success");
        },
        error: function(xml,textStatus,errorThrown) {
            alert(xml.status + "||" + xml.responseText);
        }
    });
}

そして、これが私が呼び出そうとしているページメソッドです:

[WebMethod()]
private static void CancelPlan(int activePlanId, string ntLogin)
{
    StrategyRetrievalPresenter presenter = new StrategyRetrievalPresenter();
    presenter.CancelExistingPlan(offer, ntLogin);            
}

私はこれを、親 '()'の有無にかかわらずWebメソッドを装飾することによって試しました。誰かアイデアがありますか?

27
Mark Struzinski

Webメソッドはパブリックで静的である必要があります。

92
tvanfosson

ソリューションをクリーンアップして再構築します。これを行うまで、webmethodsが500をスローするのを見てきました。

12
Cory House

追加 public staticメソッドの前...

例.

[WebMethod]
public static string MethodName() {}  
2
Tukaram