SORU
4 AĞUSTOS 2010, ÇARŞAMBA


SOL KATILIN ETMENİZ DIŞ

Nasıl gerçekleştirmek sol dış nesneler için C# SERİ katıl join-on-equals-into maddeleri kullanmadan? where fıkra ile bunu yapmak için herhangi bir yolu var mı? Doğru sorun: İç için katılmak kolaydır ve böyle bir çözüm buldum

List<JoinPair> innerFinal = (from l in lefts from r in rights where l.Key == r.Key
                             select new JoinPair { LeftId = l.Id, RightId = r.Id})

ama sol dış birleştirmek için bir çözüm istiyorum. Böyle bir şey benim ama işe yaramıyor

List< JoinPair> leftFinal = (from l in lefts from r in rights
                             select new JoinPair { 
                                            LeftId = l.Id, 
                                            RightId = ((l.Key==r.Key) ? r.Id : 0
                                        })

JoinPair bir sınıf

public class JoinPair { long leftId; long rightId; }

CEVAP
5 AĞUSTOS 2010, PERŞEMBE


Belirtildiği gibi:

101 LINQ Samples - Left outer join

var q =
    from c in categories
    join p in products on c equals p.Category into ps
    from p in ps.DefaultIfEmpty()
    select new { Category = c, ProductName = p == null ? "(No products)" : p.ProductName };

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Creavite

    Creavite

    8 Mart 2009
  • SignatureSeries

    SignatureSer

    24 Aralık 2006
  • ŠĩŗĜŕôŵåɭȍҭҭ

    ŠĩŗĜŕô

    29 Kasım 2009