• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • ASP.NET創建Web服務之聲明

    發表于:2007-05-25來源:作者:點擊數: 標簽:web聲明ASP.NET創建服務
    聲明一個XML Web服務 當你使用ASP.NET創建一個XML Web服務時,你要把所需的@_WebService指令放到.asmx文件的最頂端。.asmx文件的存在和@_ WebService指令與所實現的XML Web服務的URL地址相關。接下來,你實現XML Web服務類來定義XML Web服務客戶端可見的方法
    聲明一個XML Web服務

      當你使用ASP.NET創建一個XML Web服務時,你要把所需的@_WebService指令放到.asmx文件的最頂端。.asmx文件的存在和@_ WebService指令與所實現的XML Web服務的URL地址相關。接下來,你實現XML Web服務類來定義XML Web服務客戶端可見的方法和數據類型。最后,你把你的XML Web服務邏輯添加到那些方法上,以便處理XML Web服務請求和返回的響應。你定義的XML Web服務類可以直接被包含在.asmx文件中,也可以包含在一個單獨的文件中。如果你使用一個獨立的文件,它必須被編譯為二進制碼。你可以選擇應用一個WebService屬性到這個類上,來實現XML Web服務。實現XML Web服務的類可以繼承于WebService類。

      聲明一個XML Web服務,這個服務的實現存在于同一個文件。

      添加一個@_WebService指令到一個.asmx文件的頂部,規定在這個實現中實現XML Web服務的類和程序語言。

      Class屬性可以被設置為和@_WebService指令同一個匯編文件,或者是單獨匯編文件中的一個類。如果這個類存在于一個獨立匯編文件中,它必須放在XML Web服務所在的Web應用程序目錄下的\Bin目錄中。Language屬性可以設置為C#、VB和JS,分別表示C#、Visual Basic.NET和JScript.NET。

      下列代碼示例設置@_ WebService指令的Language屬性為C#,Class屬性為MyMath,保存在同一個文件中。

    <%@ WebService Language="C#" Class="MyMath" %>
    using System.Web.Services;
    public class MyMath {
    [ WebMethod ]
    public int Add(int num1, int num2) {
    return num1+num2;
    }
    }

      聲明一個XML Web服務,這個服務的實現存在于一個匯編文件中。

      添加一個@_WebService指令到一個.asmx文件的頂部,規定實現XML Web服務的類,匯編文件中包含的實現和在這個實現中使用的程序語言。

      下面的@_WebService指令是一個.asmx文件中唯一的一行代碼,指定了MyName.MyWebService類存在于XML Web服務的Web應用程序下\Bin目錄中的MyAssembly匯編文件中。

    [C#]
    <%@ WebService Language="C#" Class="MyName.MyWebService,MyAssembly" %>
    [Visual Basic]
    <%@ WebService Language="VB" Class="MyName.MyWebService,MyAssembly" %>

      聲明一個XML Web服務,這個服務的實現存在于一個匯編文件中。

      添加一個@_WebService指令到一個.asmx文件的頂部,規定實現XML Web服務的類,匯編文件中包含的實現和在這個實現中使用的程序語言。

      下面的@_WebService指令是一個.asmx文件中唯一的一行代碼,指定了MyName.MyWebService類存在于XML Web服務的Web應用程序下\Bin目錄中的MyAssembly匯編文件中。
      注意:如果你不在@_ WebService指令中指定一個匯編,那么ASP.NET在XML Web服務第一次被訪問的時候搜尋存放XML Web服務的Web應用程序的\Bin目錄下匯編文件的列表。所以,如果你提供匯編文件名,你將改善第一次訪問時的系統性能。

      應用WebService屬性

      通過應用可選的WebService屬性到實現一個XML Web服務的類上,你可以使用一個描述XML Web服務的字符串來設置這個XML Web服務的默認XML域名空間。

      強烈建議這個默認域名空間(此處為http://tempuri.org)在XML Web服務公開使用前被修改。這是很重要的,因為你的XML Web服務必須和其他的無意中使用默認值作為域名空間的XML Web服務區分開來。

      設置成員XML Web服務的XML域名空間

      應用一個WebService屬性到實現XML Web服務的類,設置Namespace屬性。

      下面的代碼示例設置XML域名空間為http://www.contoso.com/。

    [C#]
    <%@ WebService Language="C#" Class="Math" Debug=true%>
    using System.Web.Services;
    using System;

    [WebService(Namespace="http://www.contoso.com/")]
    public class Math {
     [ WebMethod ]
     public int Add(int num1, int num2) {
      return num1+num2;
     }
    }
    [Visual Basic]
    <%@ WebService Language="VB" Class="Math"%>
    Imports System.Web.Services
    Imports System

    <WebService(Namespace:="http://www.contoso.com/")> _
    Public Class Math
    ?。糤ebMethod()> Public Function Add(num1 As Integer, num2 As Integer) As Integer
     Return num1 + num2
    End Function
    End Class



      從WebService類衍生

      使用ASP.NET創建的實現一個XML Web服務的類可以選擇性地衍生于WebService類來獲得訪問公共的ASP.NET對象,例如Application、Session、User和Context的權限。Application和Session屬性提供保存和接收Web應用程序的生命周期或一個特定的會話的狀態的權限。想獲得關于狀態的更多的信息,請看在使用ASP.NET創建的XML Web服務中管理狀態一節。User屬性包含了XML Web服務調用者的身份。XML Web服務可以使用調用者身份來判定請求是否被授權。有關驗證的更多信息,請看加強XML Web服務安全一節。Context屬性提供了取得XML Web服務客戶端請求的所有特定HTTP信息的權限。

       下面的代碼示例使用Context屬性來獲得服務器上的請求時間。

    [C#]
    <%@ WebService Language="C#" Class="Util" %>
    using System;
    using System.Web.Services;

    public class Util: WebService {
     [ WebMethod(Description="Returns the time as stored on the Server",EnableSession=false)]
     public string Time()
     {
      return Context.Timestamp.TimeOfDay.ToString();
     }
    }
    [Visual Basic]
    <%@ WebService Language="VB" Class="Util" %>
    Imports System
    Imports System.Web.Services

    Public Class Util
    Inherits WebService

    <WebMethod(Description := "Returns the time as stored on the Server", _
    EnableSession := False)> _
    Public Function Time() As String
    Return Context.Timestamp.TimeOfDay.ToString()
    End Function
    End Class

      定義XML Web服務方法

      用來實現XML Web服務的類的方法不能自動通過Web與之通訊,但是有了使用ASP.NET創建的XML Web服務,就能夠很容易的天家這種能力。為了添加這種功能,需要應用一個WebMethod屬性到公共方法中。能夠通過Web與之通訊的XML Web服務的方法被稱為XML Web服務方法。
    XML Web服務方法是XML Web服務使用的消息傳遞基礎結構的關鍵組成部分。說得更精確些,一個客戶端和一個XML Web服務使用消息,尤其是SOAP消息進行通訊??蛻舳税l送一個SOAP請求到XML Web服務中,而一個XML Web服務方法返回一個SOAP響應。XML Web服務定義了它使用操作接受的消息類型,正如Web服務描述語言中定義的那樣。這些操作與一個XML Web服務中的每個XML Web服務方法關聯。 即使這些XML Web服務方法中的每一個都是在ASP.NET使用一個類的方法定義的,但要實現通過網絡傳送的數據,必須把數據序列化為XML。同樣地,重要的是要記得XML Web服務并不能取代DCOM,我們應該說XML Web服務是跨越使用行業標準的平臺通信的一種消息傳遞基礎結構。

      聲明一個XML Web服務方法

      聲明一個XML Web服務,添加@_WebService指令。更多信息,請看聲明一個XML Web服務一節。

      添加公共方法到實現XML Web服務的類中。

      應用WebMethod屬性到你想要映射到操作的公共方法。

      下面的代碼示例有兩個公共方法,其一是一個XML Web服務方法。Multiply方法是一個XML Web服務方法,因為它有一個應用到它上的WebMethod屬性。

    [C#]
    <%@ WebService Language="C#" Class="Util" %>
    using System;
    using System.Web.Services;
    public class Util: WebService
    {
     public int Add(int a, int b)
     {
      return a + b;
     }

     [ WebMethod]
     public long Multiply(int a, int b)
     {
      return a * b;
     }
    }
    [Visual Basic]
    <%@ WebService Language="VB" Class="Util" %>
    Imports System
    Imports System.Web.Services
    Public Class Util
    Inherits WebService

    Public Function Add(a As Integer, b As Integer) As Integer
    Return a + b
    End Function

    < WebMethod()> _
    Public Function Multiply(a As Integer, b As Integer) As Long
    Return a * b
    End Function
    End Class

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>