以程式設計方式建立 ServiceHost

以程式設計方式( 配置檔案)以最基本的形式建立 ServiceHost :

namespace ConsoleHost
{
  class ConsoleHost
  {
    ServiceHost mHost;

    public Console()
    {
      mHost = new ServiceHost(typeof(Example), new Uri("net.tcp://localhost:9000/Example"));

      NetTcpBinding tcp = new NetTcpBinding();

      mHost.AddServiceEndpoint(typeof(IExample),tcp,"net.tcp://localhost:9000/Example");                      
    }

    public void Open()
    {
        mHost.Open();
    }
    
    public void Close()
    {
        mHost.Close();
    }

    public static void Main(string[] args)
    {
        ConsoleHost host = new ConsoleHost();
        
        host.Open();
        
        Console.ReadLine();
        
        host.Close();
    }
  }
}
  1. 建立一個 ServiceHost 例項,傳遞具體的類型別和零個或多個 baseaddress Uri。
  2. 在這種情況下構造所需的繫結 NetTcpBinding。
  3. 呼叫 AddServiceEndpoint 傳遞 A ddress, B inding 和 C ontract。 (WCF 端點的 ABC 助記符)。
  4. 開啟主機。
  5. 保持主機開啟,直到使用者在控制檯上按鍵。
  6. 關閉主機。