Framework 3.5 üzerinde C# kullanıyorum. Genel özellikler <> iki özellik tarafından hızlı bir şekilde gruplandırmaya çalışıyorum. Bu örnek için, CustomerId, ProductId ve ProductCount özelliklerine sahip bir Sipariş Türü Listem olduğunu söyleyeyim. Bir lambda ifadesi kullanarak CustomerId ve ProductId tarafından gruplandırılmış ProductCounts toplamını nasıl alabilirim? Her toplamı için kimliklerini almak istiyorsanızC# Liste <> GroupBy 2 Değerleri
33
A
cevap
56
var sums = Orders.GroupBy(x => new { x.CustomerID, x.ProductID })
.Select(group => group.Sum(x => x.ProductCount));
7
Alternatif olarak, bu iş parçacığı çok eskidir ama sadece bu sözdizimi ile mücadele beri ben düşünce fark bu
var customerAndProductGroups =
from order in Orders
orderby order.CustomerID, order.ProductID // orderby not necessary, but neater
group order by new { order.CustomerID, order.ProductID };
foreach (var customerAndProductGroup in customerAndProductGroups)
{
Console.WriteLine("Customer {0} has ordered product {1} for a total count of {2}",
customerAndProductGroup.Key.CustomerID,
customerAndProductGroup.Key.ProductID,
customerAndProductGroup.Sum(item => item.ProductCount));
}
16
yapabilirdi benim ilave bulgular sonrası d - bu kadar gibi bir sorguda (foreach w/o) toplamı ve kimlikleri dönebilirsiniz:
var sums = Orders
.GroupBy(x => new { x.CustomerID, x.ProductID })
.Select(group =>new {group.Key, ProductCount = group.Sum(x => x.ProductCount)});
zor kısmı beni Çalıştırmak için toplamı ad verilmiş gerektiğidir, görünüşte ...
-1
var New1 = EmpList.GroupBy (z => z.Age) .OrderBy (Çalışan => Çalışanı.Key);
dataGridView1.DataSource = New1;
+0
Bu cevap, soru için geçerli görünmüyor. – Bryan
İlgili konular
- 1. Liste <?> vs Liste <? Nesne>
- 2. Liste <T>
- 3. Convert List <MyObject> - Sözlük <object.string, Liste <obj.ID>>
- 4. Python Liste değerleri
- 5. DataTable Liste <object>
- 6. C# <<int> T, ICollection>
- 7. Xzx1 Liste <short> için C# Döküm Listesi
- 8. C# Liste <T> .BinarySearch değeri, değer bulunamadığında döndürüldü
- 9. dönüştürme Liste <String>
- 10. C# Liste <string> sınırlayıcı ile dize
- 11. Özel nesnelerle Liste <T> .Find() kullanarak C# -
- 12. C# - Bir liste gerçekten kolay serileştirebilirsiniz <String>
- 13. LINQ groupby question
- 14. Java sözlüğü <String, Liste <Object>>
- 15. Liste <object> Listeleme <T> Yansıma
- 16. <a1> C</ a1>
- 17. Okuma değeri biz</p> <pre><code>2 3 4 5 </code></pre> <p>sadece değerleri atar matris içinde değerleri okumak
- 18. Liste <T> veya Dictionary <T,T2>, C# WinRT bileşeninde nasıl kullanılır
- 19. System.LINQ.Dynamic: Bir liste içine (<T> (veya <T> numaralı başka herhangi bir koleksiyon)
- 20. Liste <T> temizlendi sorunu
- 21. Haritadaki değerleri ekleme < K, V >
- 22. nasıl erişilir <bağlam-param> değerleri
- 23. Spark 1.5.2: do Nasıl</p> <pre><code>WrappedArray([false,/tmp,2]) </code></pre> <p>:</p> <pre><code>val x = df.select("field1").head().get(0) println(x) </code></pre> <p>Aşağıdaki çıktıyı üretir: WrappedArray
- 24. Açısal 2'de groupBy işlemi nasıl yapılır?
- 25. C# ListBox GözlemlenebilirKoleksiyon <T>
- 26. GroupBy
- 27. X * 2 + 1 hesaplamanın kısa bir yolu var mı? <br> <code>x = x*2;</code><code>x *= 2;</code></p> <p>gibi yazılmış olabilir
- 28. Liste <String, Int32, Int32> (çok boyutlu genel liste)
- 29. Statik nedir <T> List <T> methodName (Liste <? super T> giriş)
- 30. Liste Oluşturma <> runtime türünden
Bu cevabın çok eski olduğunu anlıyorum, ancak birisi takma adın neden gerekli olduğunu merak ederse, özellikler örtülü alan adları oluşturuyor ancak yöntemler kullanılmıyor. – Jimmy