Использование Visual Studio 2015 RC и ASP.Net vNext/5 beta4. Я хотел бы вывести ведение журнала в окно вывода в Visual Studio при отладке или, если возможно, в окне консоли, где размещен сайт при использовании WebListener. Мой веб-проект построен на стандартном шаблоне для шаблона для веб-приложения, поэтому в нем есть большинство материалов по умолчанию.
В моем Startup
у меня обычный стандартный
loggerfactory.AddConsole();
В моем контроллере я добавляю ILoggerFactory и делаю что-то вроде этого;
this.logger = loggerFactory.CreateLogger<ThingClass>();
this.logger.LogVerbose("Verbose");
this.logger.LogInformation("Info");
this.logger.LogError("error");
Ничего из этого не выписано в окне отладки или в другом месте - я не совсем уверен, что здесь должен быть AddConsole()
?
Затем я попытался добавить Microsoft.Framework.Logging.TraceSource
в project.json
и
loggerfactory.AddTraceSource(new SourceSwitch("web-app", "Verbose"), new DefaultTraceListener());
до Startup
. Это действительно работает - за исключением того, что теперь каждое сообщение журнала дважды записывается в консоль, что довольно раздражает.
Мне явно не хватает чего-то фундаментального, но не могу найти никакой документации по новому Microsoft.Framework.Logging. Фактически, наиболее полная и углубленная документация, которую я смог отслеживать, - это короткая статья Николаса Блумхардта: http://nblumhardt.com/2015/05/diagnostic-logging-in-dnx-asp-net-5/. p >
Я понимаю, что фреймворк должен быть просто оболочкой и что я могу реализовать своих собственных поставщиков, а также использовать ряд фреймворков, таких как Serilog и т.д. Но... для простого приложения, безусловно, я должен иметь возможность регистрировать в окно отладки в VS без большой церемонии?