Мне интересно, почему в. NET невозможно передать список типов значений методу, который ожидает IEnumerable
ссылочных типов. Например,
void MyMethod(IEnumerable<object> items) {}
...
var dtList = new List<DateTime> { DateTime.Now };
MyMethod(dtList); // not possible, but it's possible to make a cast object o = DateTime.Now;
Поскольку это прекрасно работает для ссылочных типов, я пришел к выводу, что в случае типов значений бокс необходим для каждого элемента в коллекции и его может повлиять на производительность, но я могу ошибаться, и есть некоторые другие вещи, которые следует учитывать.