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 – 我可以在ASPX页面中使用扩展方法内联吗?
- asp.net-mvc – 如何在MVC应用程序中使用RavenDb实现身份验
- asp.net:如何在button onclick上使用eventargs进行参数传递
- asp.net-core – CoreCLR中的MD5CryptoServiceProvider的替
- asp.net-mvc – Telerik MVC Grid – 可以为null的DateTime
- 如何通过给定的项目值显示Motobit Multi.Dictionary中的键?
- asp.net-mvc – Autofac:解决最内层范围的任何方法?
- asp.net-mvc-3 – Value Injecter是否会映射集合属性?
- asp.net – 我们可以在网页中使用多种形式吗?
- asp.net-identity – AspNet Identity使用相同的电子邮件进
- 无法启动ASP.NET Development服务器,因为正在使用
- asp.net-mvc – 在模型验证之前获取Filter以执行
- 如何在Asp.Net中拦截和预处理QueryStrings
- asp.net-mvc – 防止Google分析在开发环境ASP.NE
- ASP.NET Core 新建项目 - macOS 环境 - ASP.NET
- asp.net核心 – 无法在IISExpress中启动ASP.NET
- asp.net – 用于.NET的HTML Sanitizer
- ASP.NET – IHttpModule.BeginRequest触发2X,App
- asp.net-mvc-3 – 具有多个强类型部分视图的MVC
- .net – 用Linkedin登录