共用方式為


Web 服務應用程式 (C# 與 Java 的比較)

更新:2007 年 11 月

.NET Framework 透過 Web 服務提供互通性的大量支援。使用 .NET Framework、Visual Studio 和 ASP.NET 以 C# 語言建立 Web 服務是非常容易的事,您只要建立 Web 服務專案並且將 WebMethod 屬性加入至您要公開的公用方法即可。

Java

您若是使用 Java 語言,那麼只要利用 Web 服務套件即可實作應用程式,例如 Java Web Services Developer Pack 或 Apache SOAP。例如,您可以按照下列步驟以 Java 語言來建立 Web 服務和 Apache SOAP。

若要使用 Apache SOAP 以 Java 語言建立 Web 服務

  1. 寫入 Web 服務方法,如下所示:

    public class HelloWorld 
    {
    
        public String sayHelloWorld()
        {
            return "HelloWorld ";
        }
    }
    
  2. 建立 Apache SOAP 部署描述項。這可能與以下所示的描述項類似:

    <dd:service xmlns:dd="http://xml.apache.org/xml-soap/deployment"
               id="urn:HelloWorld">
    
       <dd:provider type="java"
                   scope="Application"
                   methods="sayHelloWorld">
    
        <dd:java class="HelloWorld" static="false" />
    
      </dd:provider>
    
    <dd:faultListener>org.apache.soap.server.DOMFaultListener</dd:faultListener>
    
      <dd:mappings />
    
    </dd:service>
    
  3. 編譯 HelloWorld 類別並將它移至 Web 伺服器的 Classpath。

  4. 使用命令列工具來部署 Web 服務。

C#

使用.NET Framework 類別和 Visual Studio IDE 以 C# 語言來建立 Web 服務會比較簡單。

若要使用 .NET Framework 和 Visual Studio 以 C# 語言建立 Web 服務

  1. 請在 Visual Studio 中建立一個 Web 服務應用程式。如需詳細資訊,請參閱 Java 開發人員可用的 C# 應用程式類型。下列是產生的程式碼。

    using System;
    using System.Web;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class Service : System.Web.Services.WebService
    {
        public Service () {
    
        }
    
        [WebMethod]
        public string HelloWorld() {
            return "Hello World";
        }
    
    }
    
  2. 找到程式碼行 [WebService(Namespace = "http://tempuri.org/")],將 "http://tempuri.org/" 變更成 "http://tempuri.org/"。

若要執行您的 C# Web 服務

  1. 請編譯並執行服務。在 Web 瀏覽器中輸入 https://localhost/WebSite1/Service.asmx,其中 localhost 是 IIS Web 伺服器的名稱,而 Service 則是服務的名稱 (在本例中是 Service)。

  2. 輸出如下:

    The following operations are supported. For a formal definition, please review the Service Description.
    HelloWorld
    
  3. 按一下 HelloWorld 連結以呼叫 Service1 的 HelloWorld 方法。輸出如下:

    Click here for a complete list of operations.
    HelloWorld
    Test
    To test the operation using the HTTP POST protocol, click the 'Invoke' button. 
    
    SOAP 1.1
    ...
    SOAP 1.2
    ...
    HTTP POST
    ...
    
  4. 按一下 [叫用] 按鈕以呼叫 Service1 的 HelloWorld 方法。輸出如下:

    <?xml version="1.0" encoding="utf-8" ?> 
      <string xmlns="http://HowToDevelopWebServicesTest/">Hello World</string>
    

如需 Web 服務的詳細資訊,請參閱:

請參閱

概念

C# 程式設計手冊

其他資源

Java 開發人員可用的 C#