有没有EF高手
今天刚刚改一个项目看到一句话实在是没弄懂什么意思,有没有高手给翻译一下
1)return userInfo.GetEntity(p => p.UserID == UserID);
2)
public virtual T GetEntity(Func<T, bool> exp)
{
return dao.GetEntity(exp);
}
3)
public virtual T GetEntity(Func<T, bool> exp)
{
using (BaseManageEntities Entities = new BaseManageEntities())
{
return Entities.CreateObjectSet<T>().Where(exp).SingleOrDefault();
}
}
------解决方案--------------------1)return userInfo.GetEntity(p => p.UserID == UserID);
返回userinfo中UserID为UserID的实体。
2)
public virtual T GetEntity(Func<T, bool> exp)
{
return dao.GetEntity(exp);
}
见下面
3)
public virtual T GetEntity(Func<T, bool> exp)
{
using (BaseManageEntities Entities = new BaseManageEntities())
{
return Entities.CreateObjectSet<T>().Where(exp).SingleOrDefault();
}
}
Where执行一个查找操作,它接收一个bool foo(UserInfo p) { return p.UserID == UserID; }的委托(也就是p => p.UserID == UserID),并且代入计算,返回一个符查找条件的序列。
SingleOrDefault返回这个序列的唯一的元素。