【发布时间】:2017-06-08 11:24:31
【问题描述】:
我目前正在使用 C# 开发一个新的 Prism 项目,并希望在我的 Bootstrapper 类中创建一个 NLog Logger。不幸的是,无论我做什么,它都拒绝构建,告诉我......
'Logger.Logger()' 由于其保护级别而无法访问。
下面列出了我的代码片段...
namespace PrismTemplate
{
public class Bootstrapper : UnityBootstrapper
{
#region Method Overrides
protected override ILoggerFacade CreateLogger()
{
//ILoggerFacade logger = new NLogLogger();
ILoggerFacade logger = new Logger();
logger.Log("Prism Template Logger was Created.", Category.Info, Priority.None);
return logger;
//return new Logger();
//return null;
}
protected override DependencyObject CreateShell()
{
return new ShellWindow();
}
protected override void InitializeShell()
{
base.InitializeShell();
///Assign the shell which is a window to the apps main window, and show it
App.Current.MainWindow = (Window)this.Shell;
App.Current.MainWindow.Show();
}
#endregion Method Overrides
}
}
我在 Visual Studio 中通过 Nuget 下载了 Prism 和 NLog。任何解决此问题的帮助将不胜感激。
谢谢,
特斯尼奇
【问题讨论】:
-
你通常不会直接实例化记录器,你从
LogManager获取它们例如:LogManager.GetCurrentClassLogger()或LogManager.GetLogger("classname")