0

重複の可能性:
LINQ select distinct c#

私はこのようなことをしようとしています:

List<string> manufacturerFilters = new List<string>(){"Honda", "Ford", "Jaguar", "BMW"};
var products = (from p in context.Products
                where p.DeletedSince.Equals(null)
                && manufacturerFilters.Contains(p.Manufacturer.Name)
                && p.SomeValue == 123).Distinct(**p.Manufacturer**).Take(4);

これで、フィルタ リストの 4 つのメーカーに属する製品のリストが表示されます。しかし、私が本当に欲しいのは、各メーカーから 1 つずつ、合計 4 つの製品です。そのため、この Distinct をクエリに入れましたが、もちろん機能していません..

このタイプの個別のクエリを実行するにはどうすればよいですか?

4

1 に答える 1

0
.Distinct(**p.Manufacturer.Name**) 

p.Manufacturer は参照型であるため、参照が異なるため、すべてが異なるものと見なされます。これが役立つことを願っています。.Distinct( p.Manufacturer ) を機能させたい場合は、Comparerを指定する必要があります。

于 2012-07-28T15:14:37.300 に答える