これを自分自身で行う方法を解読しようとしましたが、LINQの使用についての理解はかなり制限されています。アイデアは、例えば、あなたがItemName
「ニンジン」とGrocery
オブジェクトを持つことができ、それは二つの異なるItemTypes
に来ているオブジェクトのオブジェクトのプロパティのリストを使用したLINQクエリ
public class Grocery
{
public string ItemName { get; set; }
public List<ItemType> ItemTypes { get; set; }
}
public class ItemType
{
public double Weight { get; set; }
public long Quantity { get; set; }
}
:私は何を持っていることのような二つのクラスですここで、重量= 1lb、重量= 2lb、それぞれの量が異なります。もちろん、単にニンジンよりも多くの項目があるでしょう、これらはまた、リストに格納されています。私がやりたいのは何
List<Grocery> groceries;
は、一定の重量を考えると、すべての食料品のため、すべての数量のリストを取得することです。例えば。私は、1ポンドのタイプを持つすべての項目について、このようにそれを行うことができます:私はこれがあるのかはわからないけれども、私が知りたいのですがどのような
List<long> quantities = new List<long>();
foreach (Grocery grocery in groceries)
{
foreach (ItemType itemType in grocery.ItemTypes)
{
if (itemType.Weight == 1)
{
quantities.Add(itemType.Quantity);
}
}
}
は、私はLINQの式を使用して同じ結果を得ることができる方法であります.ForEach
を使用することに戻らずに、上記のコードと同じようにしますが、それほど冗長ではなく読みやすい方法で行うことができます。あなたの助けに感謝。
完璧な答え、それに感謝します。 –