1

3 つのデータ要素を返す Linq クエリがあります。

var billingDateResults = from s in Subscriptions
            .Where(s => (s.ProductCode.Contains("myCode")))
      select { g.ID, BillingDate =s.BILL_THRU, s.ProductCode};

結果をIDごとに1つのレコードに制限するために、これに対して異なるタイプのクエリを実行したいと思います。

var billingDateResults = from s in Subscriptions
            .Where(s => (s.ProductCode.Contains("myCode")))
group s by s.ID into g
select g.FirstOrDefault();

これは機能しますが、レコード内のすべてのフィールドが返されるようになりました。最初の例では、結果を 3 つのフィールドのみに制限することで、データの量を最小限に抑えたいと考えています。

これを行う良い方法は何ですか?

ティア

4

1 に答える 1

2

次に、これら 3 つのフィールドでグループ化します。

var billingDateResults =
    from s in Subscriptions
    where s.ProductCode.Contains("myCode")
    group new
    {
        g.ID,
        BillingDate = s.BILL_THRU,
        s.ProductCode
    } by s.ID into g
    select g.First(); // FirstOrDefault is not necessary, the groups will be non-empty
于 2013-01-08T17:54:30.583 に答える