尝试使用NLog创建日志记录帮助程序类。但是在创建属性时出现以下错误。
错误BC30518过载解决方案失败,因为无法访问'新的' 可以用这些参数调用
Private Shared ReadOnly LoggingMap As New Lazy(Of Dictionary(Of TraceLevel, Action(Of String)))(Function() New Dictionary(Of TraceLevel, Action(Of String))() From {
{TraceLevel.Info, ClassLogger.Info},
{TraceLevel.Debug, ClassLogger.Debug},
{TraceLevel.[Error], ClassLogger.[Error]},
{TraceLevel.Fatal, ClassLogger.Fatal},
{TraceLevel.Warn, ClassLogger.Warn}
})
我希望如下使用它。
''' <summary>
''' Get property for Logger
''' </summary>
Private ReadOnly Property Logger() As Dictionary(Of TraceLevel, Action(Of String))
Get
Return LoggingMap.Value
End Get
End Property
答案 0 :(得分:1)
感谢您的回答:nlog Logging Map using VB.Net
Private Shared ReadOnly LoggingMap As New Lazy(Of Dictionary(Of TraceLevel, Action(Of String))) _
(Function() New Dictionary(Of TraceLevel, Action(Of String)) From
{{TraceLevel.Info, AddressOf ClassLogger.Info},
{TraceLevel.Debug, AddressOf ClassLogger.Debug},
{TraceLevel.Error, AddressOf ClassLogger.Error},
{TraceLevel.Fatal, AddressOf ClassLogger.Fatal},
{TraceLevel.Warn, AddressOf ClassLogger.Warn}
})