0

GACのDLLにデプロイされたcodebehindクラスを含むカスタムaspxページがあります。テキストボックスのオートコンプリート動作を取得するために、jqueryを使用してコードビハインドでメソッドを呼び出そうとしています。メソッドには[WebMethod]属性があります。コードはテストasp.netアプリケーションで正常に機能しますが、SharePointサーバーに展開すると、「httpexception-Directory C:\ Inetpub \ wwwroot ... \ catalogs\masterpageが存在しません。ファイル変更の監視を開始できませんでした。 " エラー。ページにscriptmanagerタグはありません。

4

1 に答える 1

0

あなたのコードビハインドで、あなたの関数[WebMethod]の上に彼の属性を追加してから、Jqueryを介して呼び出すことができるはずです

詳細については、こちらを ご覧ください http://msdn.microsoft.com/en-us/library/byxd99hx%28v=vs.71%29.aspx

これをasp.netフォームタグの下に追加します

<asp:ScriptManager ID="scriptManager" EnablePageMethods="true" runat="server"/>

コードビハインドファイルにこの関数を追加します

[System.Web.Services.WebMethod]
public static string SayHi()
{
    return "Hi";
}

これを aspx ファイルに追加します

    <script>
        function GetHi() {

            PageMethods.SayHi(onComplete);
        }

        function onComplete(result) {
            alert(result);
        }

        GetHi();
</script>

コードビハインドを yr GAC に配置しないようにしてください

于 2012-06-29T05:41:50.337 に答える