2012-01-29 10 views

答えて

87

LINQの.Select()を使用してこれを行うことができます。あなたにADO.Netエンティティモデルを持っている必要があり、これを行うにはもちろん

public User GetUser(int userID){ 

return 
(
from p in "MyTable" //(Your Entity Model) 
where p.UserID == userID 
select p.Name 
).SingleOrDefault(); 

} 

:あなたのクエリは次のようになりますLINQを使用して

yourDbContext.MyTable.Where(u => u.UserId == 1).Select(u => u.Name); 
+1

私はエラー '' System.Linq.IQueryable 'をdb.Offices.Where(' o => o.Offic ')の' string 'に暗黙的に変換できません。 eId == emp.OfficeId).Select(o => o.DepartmentId) '任意のアイデア? – guitarlass

+16

@guitarlassクエリから1つの結果を得るには、 'string s = db.Offices.Where(o => o.OfficeId == emp.OfficeId)のようにする必要があります。 => o.DepartmentId).FirstOrDefault() ' –

2

あなたはLINQ select句を使用して、[名前]列に関連するプロパティを参照することができます。

4

:あなたのケースでは、それは次のように行くだろう溶液。

3

それは主キーなら...

var name = yourDbContext.MyTable.Find(1).Name; 

私は、エンティティの完全なnoobのだが、これは、私は理論的にはそれを行うだろうかです。

- OR -

var name = yourDbContext.MyTable.SingleOrDefault(mytable => mytable.UserId == 1).Name; 

- OR - 全体の列の

var names = yourDbContext.MyTable 
.Where(mytable => mytable.UserId == 1) 
.Select(column => column.Name); //You can '.ToList();' this.... 

しかし、 "もぉリックああ、私は何を知っていますか..."

関連する問題