我刚刚创建了小型Windows Azure应用程序(它只是一个WebRole),我正在Windows Azure Compute Emulator中测试它(运行从VisualStudio进入调试模式)。为什么Trace.WriteLine()不能从ASP.NET MVC控制器工作
但是应用程序日志仍然不适用于我。问题在于我能够从WebRole.Run()
方法中记录消息 - 当调用Run()
方法(Web角色启动)时,可以在模拟器控制台中看到“foo bar”字符串。
但没有任何反应,当我试图从ASP.NET MVC控制器的操作方法登录(即没有在模拟器控制台没有日志条目虽然控制器的操作方法是通过我的HTTP请求调用,效果很好)。
在WebRole
类:
public override void Run()
{
Trace.WriteLine("foo bar", "Information");
base.Run();
}
在ASP.NET MVC控制器:
public ActionResult Redirect()
{
Trace.WriteLine("redirecting ...", "Information");
// ...
return RedirectPermanent(url);
}
可能是什么问题呢?为什么Trace.WriteLine()
不适用于控制器?我有ASP.NET Web API控制器以及经典的ASP.NET MVC控制器,它是一样的。
还是我完全错了,应用程序日志记录应该以其他方式执行?
是的,也许这是同样的问题。它帮助了我很多,但仍然在模拟器中登录似乎对我来说有点棘手......仍然无法正常工作。无论如何,谢谢! +1 – zbynour