I have a C# class with a constructor. The constructor currently requires a logger<myObject>. The code looks like this:
public class MyClass
{
private ILogger<MyObject> _logger;
public MyClass(ILogger<MyOjbect> logger)
{
_logger = logger;
}
}
I would like ILogger to take a generic, that way I can instantiate an instance of MyClass anywhere I want and pass in any type of ILogger<T> that I want, however, when I change <MyObject> to <T> I'm getting:
The type or namespace 'T' cannot be found. Are you missing a directive or assembly reference?
Meaning, I'd like the code to look like this:
public class MyClass
{
private ILogger<T> _logger;
public MyClass(ILogger<T> logger)
{
_logger = logger;
}
}
and to create it:
var myClass = new MyClass(ILogger<Something> logger);
T?