检查是否引用了linq对象
检查linq对象是否从其他表引用的最佳(最快)方法是什么。通常我是这样做的,但我想在较大的桌子上这样做可能会比较慢检查是否引用了linq对象,linq,object-reference,Linq,Object Reference,检查linq对象是否从其他表引用的最佳(最快)方法是什么。通常我是这样做的,但我想在较大的桌子上这样做可能会比较慢 CurrentObject.ReferencingObjects.Count != 0 这可能会更快 CurrentObject.ReferencingObjects.FirstOrDefault() != null 有更好的方法吗?如果referenceGobjects实现ICollection(考虑到它具有Count属性,它似乎是这样),第一个选项实际上可能更快,因为Cou
CurrentObject.ReferencingObjects.Count != 0
这可能会更快
CurrentObject.ReferencingObjects.FirstOrDefault() != null
有更好的方法吗?如果
referenceGobjects
实现ICollection
(考虑到它具有Count
属性,它似乎是这样),第一个选项实际上可能更快,因为Count
(对于大多数实现)通常直接存储,所以这实际上只是一个直接查找字段的属性
但是,如果您使用的是Enumerable.Count()
(方法,而不是属性),那么我首选的方法是使用:
CurrentObject.ReferencingObjects.Any();
因为Any()
方法非常清楚地显示了您的意图,而且通常速度非常快