asp.net-mvc – 使用没有主键的查找在dbSet中查找记录
|
我有一个用户表: Users: +ID +Username +... 我想使用myDBContext.Users.Find(用户名)来填补用户. 我必须使用完整的LINQ查询吗?例如 var user = from users in myDBContext.Users.Find(Username)
where users.Username == username
select users
我还试图将用户名定义为我的edmx中的主键,但是导致以下错误:
解决方法尝试,User myUser = myDBContext.Users.SingleOrDefault(user => user.Username == username); 使用SingleOrDefault单个.如果用户不存在,则Single会抛出错误.而如果用户未找到,SingleOrDefault将返回null用户对象将返回. SingleOrDefault和FirstOrDefault之间的选择 您可以使用SingleOrDefault和FirstOrDefault获取用户对象,但是在选择要使用的方法时考虑以下点. >如果存在,则两者都只返回collection / database中的一个值,否则默认值. FirstOrDefault >通常FirstOrDefault或当我们从集合或数据库中要求单个值(第一个)时首先使用. 其他一些话 >如果用户名是主键,那么我认为SingleOrDefault和FirstOrDefault性能之间没有太大的差别,因为主键具有索引,索引列上的搜索总是比正常列快.> Single或SingleOrDefault将生成一个常规的TSQL,如“SELECT …”.> First或FirstOrDefault方法将生成TSQL语句,如“SELECT TOP 1 …” (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 此模板试图加载组件程序集Microsoft.Visual
- asp.net-mvc – ICommandHandler / IQueryHandler with asy
- asp.net – Oracle中的参数化查询问题
- asp.net 4.0 web表单路由 – 默认/通配符路由
- asp.net-mvc – 如果value为空,在razor模板上放置一个空字符
- asp.net – 为什么加密一个web配置文件?
- asp.net – 是否可以访问位于另一个项目的MVC视图?
- asp.net-mvc – JSP相当于ASP.NET MVC的部分视图?
- asp.net – 在IIS上部署MVC应用程序时,我收到一个空白页面
- 如何在ASP.NET MVC控制器(ActionResult)中更改返回的Conten
