2015-09-28 2 views
0

У меня есть простое консольное приложение, чтобы узнать OWIN/Katana, и я застрял.Отладка Self Host OWIN Middleware не всегда работает

class Program 
{ 
    static void Main(string[] args) 
    { 
     string url = ConfigurationManager.AppSettings["url"]; 
     using (var app = WebApp.Start<Startup>(url)) 
     { 
      Console.WriteLine("Started listening on {0}", url); 
      Console.ReadKey(); 
      Console.WriteLine("Stopping"); 
     } 
    } 
} 

Это начинается просто отлично и ударяет по моему блоку. Console fired up ready to listen to requests

Я тогда вижу, что мой запуск называется: Use() Methods are being hit during debugging

Далее я запуска Почтальон в Chrome и отправить GET запрос. На этом этапе мои точки прорыва никогда не попадают ни в один из модулей. Postman GET setup

Независимо от того, какие изменения я делаю, это не выводит мои сообщения на консоль. Есть ли способ найти то, что терпит неудачу? В Postman я получаю HTTP 200 с полезной нагрузкой. Класс OwinMiddleware находится из пространства имен Microsoft.Owin.

Owin Middleware Module Components

EDIT: Технология стека проекта:

Веб-сайт (не веб-приложения) работает AngularJs 1,4 с помощью $ ресурса. WebAPI 2,2 с OData V4

Работает на .Net 4.5

+0

Ваша «WebApiMiddleware» находится перед конвейером «LoggingMiddleware», поэтому запрос может быть завершен там и, возможно, никогда не достигнет регистрации. Добавьте регистрацию вверху, прежде чем «StartupPrerequsites (приложение);» и повторите попытку. –

+0

@ Ангел Йорданов. Именно так. Пожалуйста, отправьте это как ответ, чтобы я мог его принять. Большое спасибо! – jjhayter

+0

Добро пожаловать! –

ответ

1

Вашего WebApiMiddleware находится перед LoggingMiddleware в трубопроводе таким образом, запрос может быть прекращен там и никогда не может достичь протоколирования. Добавьте регистрацию сверху, до StartupPrerequsites(app); и повторите попытку.

Смежные вопросы