方法 : WebService クラスを継承する
更新 : 2007 年 11 月
既定では、ASP.NET Web サービスのプロジェクト テンプレートを使用して作成された XML Web サービスは、System.Web.Services.WebService クラスを継承します。このクラスを継承することにより、XML Web サービスは Application や Session などの ASP.NET の組み込みオブジェクトにアクセスできます。詳細については、「Visual Basic の継承」または「継承 (C# プログラミング ガイド)」を参照してください。
メモ : |
---|
XML Web サービスを実装するクラスが WebService クラスを継承しない場合は、XML Web サービスに対してコンポーネント デザイナを使用できません。 |
このクラスを継承しない場合、XML Web サービスは、HttpContext.Current プロパティから ASP.NET の組み込みオブジェクトにアクセスできます。これは、XML Web サービスがカスタム基本クラスを継承する必要がある場合などです。XML Web サービスを実装するクラスはパブリックである必要があり、パブリックな既定のコンストラクタ (パラメータのないコンストラクタ) を持つ必要があります。これにより、ASP.NET は受け取った XML Web サービス要求を処理する XML Web サービス クラスのインスタンスを作成できます。
System.Web.Services.WebService クラスを継承するには
次の例に示すようにして、System.Web.Services.WebService クラスを継承できます。
Public Class Service1 Inherits System.Web.Services.WebService <System.Web.Services.WebMethod( _ Description:="Get SessionID", _ EnableSession:=True)> _ Public Function GetSessionID() As String GetSessionID = Me.Session.SessionID End Function End Class
public class Service1 : System.Web.Services.WebService { [System.Web.Services.WebMethod( Description="Get SessionID", EnableSession=true)] public string GetSessionID() { return this.Session.SessionID; } }