2015-11-01 107 views
0

我已實施this tutorial。使用MVC 5.我添加了來自nuget的軟件包:Microsoft.AspNet.WebHooks.Recievers.GitHub並在App_Start文件夾中創建了一個WebApiConfig.cs類。當從GitHub發送時,我得到一個狀態200 ok的消息,所以路由工作正常並且響應。Microsoft.AspNet.WebHooks.Receivers。* MVC 5未註冊處理程序

然後我創建了一個webhook處理程序來處理請求,這裏是代碼。

{ 
public class GitHubHandler : WebHookHandler 
{ 
    public GitHubHandler() 
    { 
     this.Receiver = "github"; 
    } 

    public override Task ExecuteAsync(string receiver, WebHookHandlerContext context) 
    { 
     string action = context.Actions.First(); 
     JObject data = context.GetDataOrDefault<JObject>(); 

     Debug.WriteLine("Made it to reciever"); 

     return Task.FromResult(true); 
    } 
} 

}

而且我一直無法打到這裏調試點或寫信至dubug控制檯。

我想知道如果我的應用程序不是自動註冊它嗎?或者我錯過了什麼?

回答

0

本教程實際上效果很好。這是一個非問題。更加深入地瞭解從Microsoft.AspNet.Webhooks.Reciever.GitHub的代碼後,我發現這一點:

  // If this is a ping request then just return. Otherwise call handlers. 
     if (string.Equals(actions.FirstOrDefault(), PingEvent, StringComparison.OrdinalIgnoreCase)) 
     { 
      return request.CreateResponse(); 
     } 

而且,我才明白,GitHub的測試提供信息只發送一個「平」事件,這段代碼說明了一切。

提交後,並生成一個真實的事件我的處理程序達到預期。

相關問題