在没有引用传递的情况下记录整个类库

Ste*_*oka 5 .net c# logging class-library

我在C#中有一个类库,它为我做了很多不同的功能.我希望能够在整个类中进行日志记录,但是,我真的不想在整个过程中传递日志记录库的实例.

例如

public void MyMethod(LoggingClass logger)
{
  logger.log("something");
}

public void MyMehtod2(LoggingClass logger)
{
  logger.log("something else");
}
Run Code Online (Sandbox Code Playgroud)

我在这个图书馆的每个地方都有课程,我正在努力做到这一点.我一直在寻找与Ninject的依赖注入,但似乎无法理解它应该如何工作.

总而言之,我希望能够拥有一个日志记录类,并能够实例化一次,然后在任何地方使用它来记录.

IAb*_*act 5

我认为不需要单身人士.只需在库中使用静态类:

internal static class Logger {

static Logger() {

    // configure logger

}

internal static void Log(string Message, params object[] args) {

    var message = string.Format(Message, args);
    //  write message

}
Run Code Online (Sandbox Code Playgroud)