Ответ 1
var list = stockItems.Select(item => item.StockID).ToList();
Для класса, подобного этому:
public class Stock
{
public Stock() {}
public Guid StockID { get; set; }
public string Description { get; set; }
}
Допустим, теперь у меня есть List<Stock>
. Если я хотел бы получить список всех StockID и заполнить его в IEnumerable или IList. Очевидно, я могу это сделать.
List<Stock> stockItems = new List<Stock>();
List<Guid> ids = new List<Guid>();
foreach (Stock itm in stockItems)
{
ids.Add(itm.StockID);
}
Но можно ли каким-то образом использовать Linq для достижения того же результата? Я думал, что Distinct()
может это сделать, но не смог решить, как достичь желаемого результата.
var list = stockItems.Select(item => item.StockID).ToList();
Вы также можете сделать это следующим образом:
ids = stockItems.ConvertAll<Guid>(o => o.StockID);
Как насчет чего-то подобного? Можно ли это упростить?
List<TranCode> alltrans = new List<TranCode>();
foreach (var bh in obj1.obj2WithCollection.obj2Collection)
{
alltrans.AddRange(bh.obj3WithCollection.Select(e => e.TransactionCode).ToList());
}