---DAL---
public virtual Head SearchOneImg(Expression<Func<Head, bool>> where)
{
SpecialtyEntities dbcontext = DBContextCreater.GetDbContext();
//获取随机的一条数据
return dbcontext.Set<Head>().Where(x => 1 == 1).OrderBy(x => Guid.NewGuid()).First()
}
---BLL---
public virtual Head SearchOneImg(Expression<Func<Head, bool>> where)
{
IHeadDal dal = new HeadDal();
return dal.SearchOneImg(where);
}
---UI---
//随机生成头像(从头像表里随机查询一条)
// Specialty.DAL.BaseDal<Head> aa = new DAL.BaseDal<Head>();
Head cx = bll.SearchOneImg(x=>1==1);
---DBContextCreater类,保证使用的是同一个上下文---
public class DBContextCreater
{
//CallContext当前线程(处理当前请求的线程),一个数据存储容器
public static SpecialtyEntities GetDbContext()
{
SpecialtyEntities context = CallContext.GetData("context") as SpecialtyEntities;
if (context==null)
{
context = new SpecialtyEntities();
CallContext.SetData("context", context);
}
return context;
}
}
EF随机从数据库中获取一条数据
最新推荐文章于 2022-02-19 15:22:37 发布