このようなクラスが与えられた場合:
_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());
}