如何在Razor视图中添加日志记录?我想使用诸如log4net之类的日志记录工具添加调试语句。
我同意其他回答,但这只是用于临时调试,例如查找计数或类似情况。
经过一番摆弄后,以下语法可行。
@{ ViewBag.Log = log4net.LogManager.GetLogger("Products.cshtml");}
@ViewBag.Log.Debug("产品数量 = " + Model.Products.ToList().Count);
希望这能帮助到某些人。
我强烈不建议你那样做。
在我看来,你的观点中有逻辑。这使得这些观点难以维护,而测试逻辑更加困难。
将逻辑移至控制器或视图模型中,并在这些位置进行记录。
听起来你最好采用应用程序范围的日志记录方法,因为你不想在视图中捕获逻辑错误。逻辑应该在控制器和(在一定程度上)模型中。
看看这里 -> https://stackoverflow.com/questions/5363794/what-does-an-mvc-basecontroller-with-logging-look-like 了解如何记录错误并在整个站点中捕获异常。