Кажется, это должно быть легко, но я не могу придумать аккуратный способ сделать это.
С классом
class SomeType
{
public int SomeInteger {get;}
public string SomeString {get;}
public object SomeObject {get;}
}
Предполагая, что откуда-то извлекается список SomeType, но тогда мне нужно удалить поле SomeString из каждого элемента в списке. Поэтому я перебираю список, создаю анонимный тип и добавляю его в новый список.
List<SomeType> list = GetList();
var newList = new List<dynamic>();
list.ForEach(item => newList.Add(new { SomeInteger = item.SomeInteger, SomeObject = item.SomeObject });
Есть ли лучший способ сделать это, не требующий от меня создания пустого списка динамического типа? Могу ошибаться, но мне кажется, что это не лучший способ сделать это.