Kann mir jemand erklären, warum GetInterfaces() im folgenden Code einen Schnittstellentyp zurückgibt, der FullName = null hat?
public class Program
{
static void Main(string[] args)
{
Type[] interfaces = typeof (Data<>).GetInterfaces();
foreach (Type @interface in interfaces)
{
Console.WriteLine("Name='{0}' FullName='{1}'", @interface.Name, @interface.FullName ?? "null");
}
}
}
public class Data<T> : IData<T>
{
public T Content { get; set; }
}
public interface IData<T>
{
T Content { get; set; }
}
Die Ausgabe des Programms lautet:
Name=IData`1' FullName='null'
Das hatte ich irgendwie erwartet:
Name=IData`1'
FullName='ConsoleApplication2.IData`1'
Bitte klären Sie mich auf :)