2015-11-07 33 views
1

我相信我已經正確啓用日誌記錄在我的Asp.net 5的應用程序,用下面的代碼:Asp.net 5日誌不顯示在輸出窗口

增加了以下線在Startup.cs我ConfigureServices方法:

services.AddLogging() 

在我的配置方法包括AddDebug()

public void Configure(IApplicationBuilder app, TheWorldContextSeedData seedContext, ILoggerFactory logger) 
    { 
     logger.AddDebug(LogLevel.Information); 

     app.UseStaticFiles();// allow self hosting to use static files i.e. files in the wwwroot 

     //listen for mvc requests 
     app.UseMvc(config => 
     { 
      config.MapRoute(
       name: "Default", 
       template: "{controller}/{action}/{id?}",//optional id 
       defaults: new { controller = "App", action = "Index" } 
       ); 
     }); 

     seedContext.EnsureSeedData(); 
    } 

不過,我看不出在調試下的輸出窗口中的任何信息。在這種情況下,我正在尋找有關實體框架正在執行的日誌信息,即它正在運行哪個命令。

任何想法將是非常有益的,感謝

+0

'AddDebug'只會在實際調試時在調試窗口中顯示日誌輸出。如果希望輸出顯示在正常輸出中,則需要使用「AddConsole」。 – poke

+1

請注意,Beta8和RC1之間將增加日誌記錄功能,這些功能將在11月底發佈。根據最新的ASP.NET 5社區站點,當您可以看到SQL命令時,此日誌記錄功能專門處理EF日誌記錄。 https://www.youtube.com/watch?v=CxuSmw2-BSI&list=PL0M0zPgJ3HSftTAAHttA3JQU4vOjXFquF&index=0 – firste

回答

1

在這種情況下,我希望在關於什麼實體框架是做即哪個命令正在運行日誌信息很多消息。

對實體框架的日誌級別從信息改爲調試,因爲這通常輸出很多的調試信息這不是格外有用的,從長遠來看。新行爲也更符合logging guidelines

這個改變是在Beta 7發佈後不久做出的,並且在this issue中提出。從beta 8開始,您需要將日誌級別設置爲調試以查看實體框架的輸出。另見this related issue

+0

謝謝,這現在顯示我預期的信息。也是非常有用的鏈接,我會更詳細地研究這些鏈接 –

0

你不需要行

services.AddLogging. 

記錄已經可以從引導代碼

你可以看到調試日誌VS 2015年如果您連接到DNX進程或運行項目(F5)。 請參閱output window並選擇debug

應該有一個關於線程退出等