1

この記事に書かれているように、Jquery.Ajax を使用してページ メソッドにアクセスします。

http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/

しかし、コードビハインドを介さずにクラスファイル (.cs) に直接アクセスする方法があるかどうか疑問に思っていました

ありがとう

4

1 に答える 1

5

いいえ、仕方がありません。AJAX はクライアントで実行され、サーバー側に依存しません。これは、AJAX がファイルの意味を認識していないことを意味し.csます。AJAX は HTTP 要求をサーバー側ハンドラーに送信します。サーバーで ASP.NET を使用している場合、このハンドラーは汎用ハンドラー ( IHttpHandler) または WebForm のいずれかになります。

したがって、この .cs ファイルに含まれる機能を公開する最も簡単な方法は、カスタムのジェネリック ハンドラーを作成し、AJAX 要求をこのハンドラーに送信することです。

例えば:

public class MyHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        var response = context.Response;
        response.ContentType = "application/json";
        response.Write(new JavaScriptSerializer().Serialize(new
        {
            result = SomeClass.GetResult()
        }));
    }

    public bool IsReusable
    {
        get { return true; }
    }
}

これで、AJAX リクエストを に送信できます/myhandler.ashx

于 2012-11-11T18:40:32.613 に答える