Скажем, у меня есть общий класс следующим образом:Wildcard эквивалент в C# дженериков
public class GeneralPropertyMap<T>
{
}
В какой-то другой класс у меня есть метод, который принимает в массиве GeneralPropertyMap<T>
. В Java, для того, чтобы взять в массив, который содержит любой тип GeneralPropertyMap
метод будет выглядеть следующим образом:
private void TakeGeneralPropertyMap(GeneralPropertyMap<?>[] maps)
{
}
Мы используем подстановочные так, что позже мы можем назвать TakeGeneralPropertyMap
проходя кучу GeneralPropertyMap
с любым типом для T
каждый, как это:
GeneralPropertyMap<?>[] maps = new GeneralPropertyMap<?>[3];
maps[0] = new GeneralPropertyMap<String>();
maps[1] = new GeneralPropertyMap<Integer>();
maps[2] = new GeneralPropertyMap<Double>();
//And finally pass the array in.
TakeGeneralPropertyMap(maps);
Я пытаюсь выяснить эквивалент в C# без успеха. Есть идеи?
Вы пробовали сделать функцию принять 'GeneralPropertyMap