38

クエリ表記法を使用して記述された次の LINQ 式を検討してください。

 List<Person> pr = (from p in db.Persons
                     join e in db.PersonExceptions
                     on p.ID equals e.PersonID
                     where e.CreatedOn >= fromDate
                     orderby e.CreatedOn descending
                     select p)
                   .ToList();

質問:ドット表記を使用して、この LINQ 式をどのように記述しますか?

4

1 に答える 1

76

このような:

List<Person> pr = db.Persons
                    .Join(db.PersonExceptions,
                          p => p.ID,
                          e => e.PersonID,
                          (p, e) => new { p, e })
                    .Where(z => z.e.CreatedOn >= fromDate)
                    .OrderByDescending(z => z.e.CreatedOn)
                    .Select(z => z.p)
                    .ToList();

peビットの両方を転送するために、新しい匿名型がどのように導入されたかに注意してください。仕様では、これを行うクエリ演算子は透過的な識別子を使用して動作を示します。

于 2009-10-02T21:23:34.353 に答える