2017-04-19 69 views
1

我已通過wcf創建了端點,並通過控制檯應用程序託管了wcf。無法呼叫我的wcf端點

我已經把調試器放在那個我試圖從瀏覽器調用的方法上,但是這個方法沒有被調用。

我採取參考從以下網站:

https://msdn.microsoft.com/en-us/library/ms731080(v=vs.110).aspx

http://www.infoworld.com/article/3034606/application-development/how-to-work-with-a-wcf-service-programmatically.html

WCF服務:

public class CalculatorService : ICalculator 
    { 
     public double Add(double n1, double n2) 
     { 
      return n1 + n2; 
     } 
     public double Subtract(double n1, double n2) 
     { 
      return n1 - n2; 
     } 
    } 

[ServiceContract] 
    public interface ICalculator 
    { 

     [OperationContract] 
     double Add(double n1, double n2); 
     [OperationContract] 
     double Subtract(double n1, double n2); 
    } 

控制檯,它承載WCF應用App:

class Program 
    { 
     static void Main(string[] args) 
     { 
      var serviceUrl = "http://localhost:56264/CalculatorService.svc"; 
      var uri = new Uri(serviceUrl); 
      ServiceHost selfHost = new ServiceHost(typeof(CalculatorService), uri); 
      try 
      { 
       BasicHttpBinding binding1 = new BasicHttpBinding(); 
       selfHost.AddServiceEndpoint(typeof(ICalculator), binding1, "CalculatorService"); 
       selfHost.Open(); 
       Console.WriteLine("Service started... " + serviceUrl); 
       Console.ReadKey(); 
      } 
      catch (Exception ex) 
      { 

      } 
      finally 
      { 

      } 
     } 
    } 

enter image description here

當我嘗試調用我的WCF服務端點像下面然後我得到如下結果:

enter image description here

回答

1

經營合同應具備WebGet()屬性。

[WebGet()] 
[OperationContract] 
double Add(double n1, double n2);