class LogUtil : ILogUtility
{
object _classtype;
log4net.ILog log;
public LogUtil(object classtype)
{
_classtype = classtype;
log = log4net.LogManager.GetLogger(_classtype.GetType().FullName);
}
public void Log(LogType logtype, string message)
{
Console.WriteLine("logging coming from class {0} - message {1} ", _classtype.GetType().FullName, message);
}
}
Из кода клиентского класса я вызываю указанный выше класс LogUtil следующим образом:
public class TestCode
{
public void test()
{
LogUtil logutil = new LogUtil(this);
}
}
В конструкторе LogUtil я хочу ИЗБЕГАТЬ передачи объекта тип класса. Я хочу передать объект клиентского класса, который я могу передать методу GetLogger. Метод GetLogger должен знать, какой класс создал экземпляр класса LogUtil.
В том виде, в котором я это сделал сейчас, я могу передать целочисленный тип переменной класса, и это сработает. Я хочу избежать этого.
Как мне это сделать? Как я могу использовать метод дженериков в этом случае?