1. ホーム
  2. linq

[解決済み] LINQ を使用して、オブジェクトのリストから一意のプロパティのリストを取得するにはどうすればよいですか?

2022-04-15 13:43:51

質問

LINQを使って、idがプロパティであるオブジェクトのリストから、idのリストを返そうとしています。各オブジェクトをループして、見つけたユニークなidを引き出すことなく、これを行えるようにしたいのです。

MyClass型のオブジェクトのリストがあり、このクラスのプロパティの1つにIDがあります。

public class MyClass
{
  public int ID { get; set; }
}

LINQクエリを書いて、これらのIDのリストを返したい。

を指定した場合、どのようにすればよいのでしょうか? IList<MyClass> を返すような IEnumerable<int> のidの?

MyClassリストの各項目をループしてユニークな値をリストに追加するのではなく、LINQを使って1~2行でできるに違いないと思うのですが。

どのように解決するのですか?

IEnumerable<int> ids = list.Select(x=>x.ID).Distinct();