c# - 让 linq 知道唯一的 ID

标签 c# linq

我有一个小问题。我如何让 linq 知道某些列是唯一的

效果。我有一个表,其中包含“ID”和“Name”列

ID 是自动递增的主键。名称只是 varchar(255)

像这样的 linq 的结果:

from item in db.ItemSet
where item.ID == 1
select item

我只剩下一个 IQueryable。但是只能有 1 个项目,"ID"==1 我如何告诉 linq 这个。

目前我是这样做的

(from item in db.ItemSet
 where item.ID == 1
 select item).First()

但我会认为这是一个“hack”...

最佳答案

您可以使用 .Single() 而不是 .First()

但是,这两者都假设记录存在,如果没有找到记录将抛出异常。如果有可能查找不存在的记录,您可能需要考虑 .FirstOrDefault()/.SingleOrDefault()

进一步阅读:

关于c# - 让 linq 知道唯一的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12178353/

相关文章:

javascript - 我想知道如何在后面的代码中访问我的模态表单元素。另外我想知道如何在模态表单上应用 jquery 验证器

c# - 使用 NEST for .NET 的 Elasticsearch 5.4 分页

c# 重新启动 for 循环

c# - 使用内存中查询实现自定义 QueryProvider

c# - 使用数据库中的复选框填充 StackPanel

c# - 如何在linq中使用sql函数

c# - WCF 服务可以替代 TCPListener 的功能吗?

C# 聊天 wpf 应用程序

c# - Linq 查询中的意外结果总是 + 1

c# - 查找与分组