4
我找了LINQ查詢,看是否存在類似物體C#的LINQ列表包含相似的元素
我有一個對象圖如下
Cart myCart = new Cart
{
List<CartProduct> myCartProduct = new List<CartProduct>
{
CartProduct cartProduct1 = new CartProduct
{
List<CartProductAttribute> a = new List<CartProductAttribute>
{
CartProductAttribute cpa1 = new CartProductAttribute{ title="red" },
CartProductAttribute cpa2 = new CartProductAttribute{ title="small" }
}
}
CartProduct cartProduct2 = new CartProduct
{
List<CartProductAttribute> d = new List<CartProductAttribute>
{
CartProductAttribute cpa3 = new CartProductAttribute{ title="john" },
CartProductAttribute cpa4 = new CartProductAttribute{ title="mary" }
}
}
}
}
我想從車得到= > CartProduct與我需要比較的CartProduct具有完全相同的CartProductAttribute標題值。 不多也不少。
E.G.我需要找到具有從對象圖與標題CartProductAttribute =「紅色」,並以標題中myCart(在本例如「cartProduct1」)一個cartProductAttribute =「小」
CartProduct cartProductToCompare = new CartProduct
{
List<CartProductAttribute> cartProductToCompareAttributes = new List<CartProductAttribute>
{
CartProductAttribute cpa5 = new CartProductAttribute{ title="red" },
CartProductAttribute cpa6 = new CartProductAttribute{ title="small" }
}
}
所以類似CartProduct
- myCart
- cartProduct1
- CPA1(標題=紅色)
- CPA2(標題=小)
- cartProduct2
- CPA3(標題=約翰)
- CPA4(標題=瑪麗)
- cartProduct1
Linq查詢尋找爲
- cartProductToCompare
- cpa5(標題=紅色)
- CPA6(標題=小)
應該找到
- cartProduct1
希望這一切都是有道理的...
謝謝
感謝ChaosPandion,我是否正確地說我需要更改products.Attributes.Any到products.Attributes.All以便只返回「紅色」和「小」兩個匹配項? – 2010-04-17 04:35:46
@John - 是的,我相信。 – ChaosPandion 2010-04-17 19:08:41