0

静的 WebMethod を使用して、ユーザーがいるアクティブな (現在の) ASP ページで非静的メソッドを呼び出す必要があります。これどうやってするの?

これらのメソッドは両方とも、ASP ページの cs ファイル内にあります。

    public void NormalMethod()
    {
        txtFindingNum.Text = "Ajax is da bomb";
    }

    [WebMethod]
    public static void MyWebMethod()
    {
        // This is the part I need help with...
        DoIt();
    }
4

2 に答える 2

5

あなたはそれをすることはできません。意味がありません。

ページのインスタンス メソッドは、ページの特定のインスタンスに関するものです。静的 Web メソッド (ページ メソッド) を使用している場合、ページのインスタンスはありません。

Web メソッドからインスタンス メソッドを呼び出すことができる場合、それはインスタンス メソッドが静的メソッドであることを意味します。そのメソッドに追加するだけstaticで、まだ機能しますか? そうでない場合は、ページの特定のインスタンスに依存し、インスタンスがない場合は呼び出すことができません。


ページ インスタンスは、サービスを提供している HTTP リクエストの間のみ存在することに注意してください。クライアント側のコードが Web サービスを呼び出すまでに、その HTTP 要求は既に終了しており、ページ インスタンスは存在しません。

于 2013-08-07T08:08:00.557 に答える