LINQ TO SQL 之Single“序列中不包含任何元素“的处理方法
当查询一个对象是否存在时,如果用Single 方法查询,如
dbDataContext db=new dbDataContext ();
User user=db.User.Single(u=>u.Id==Id);
如果user为空的话 会出现异常 “序列中不包含任何元素”
所以要用到Any方法 Any返回的是bool类型 ,当返回真的时候再用Single 方法去找对象
bool flag = db.User.Any(a => a.Id== Id);
if (flag)
{
User user=db.User.Single(u=>u.Id==Id);
}
另一种方式:推荐使用,因为只查询一次,上面的方法要查询两次
return cx.Base_User.AsQueryable().SingleOrDefault(u => u.UserName == userName);
作者:月亮#
说明:1、本博客文章部分来源于互联网,如有异议,请及时联系本人:QQ:817647
2、如果要转载本文,请在文章页面明显位置给出原文连接,多谢合作。
2、如果要转载本文,请在文章页面明显位置给出原文连接,多谢合作。