1. ホーム
  2. c#

Entity Frameworkで単一の列を選択する方法は?

2023-10-09 17:11:48

質問

Entity Framework 4を使用して、単一の列の全体の内容を取得する方法はありますか?このSQLクエリのように同じです。

SELECT Name FROM MyTable WHERE UserId = 1;

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

LINQの .Select() を使うことができます。あなたの場合、それは次のようになります。

string Name = yourDbContext
  .MyTable
  .Where(u => u.UserId == 1)
  .Select(u => u.Name)
  .SingleOrDefault(); // This is what actually executes the request and return a response

レスポンスで複数のエントリーを期待する場合は .ToList() を使ってリクエストを実行します。例えば、30歳の人の名前を取得するには、このようにします。

string[] Names = yourDbContext
  .MyTable
  .Where(u => u.Age == 30)
  .Select(u => u.Name)
  .ToList();