Entity Framework 4を使用して単一列の内容全体を取得する方法はありますか?このSQLクエリのように同じ:Entity Frameworkで単一列を選択する方法は?
SELECT Name FROM MyTable WHERE UserId = 1;
Entity Framework 4を使用して単一列の内容全体を取得する方法はありますか?このSQLクエリのように同じ:Entity Frameworkで単一列を選択する方法は?
SELECT Name FROM MyTable WHERE UserId = 1;
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);
あなたはLINQ select
句を使用して、[名前]列に関連するプロパティを参照することができます。
:あなたのケースでは、それは次のように行くだろう溶液。
それは主キーなら...
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....
しかし、 "もぉリックああ、私は何を知っていますか..."
私はエラー '' System.Linq.IQueryable 'をdb.Offices.Where(' o => o.Offic ')の' string 'に暗黙的に変換できません。 eId == emp.OfficeId).Select(o => o.DepartmentId) '任意のアイデア? –
guitarlass
@guitarlassクエリから1つの結果を得るには、 'string s = db.Offices.Where(o => o.OfficeId == emp.OfficeId)のようにする必要があります。 => o.DepartmentId).FirstOrDefault() ' –