.NET 6的TryGetNonEnumeratedCount方法怎么用
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,本篇内容主要讲解".NET 6的TryGetNonEnumeratedCount方法怎么用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习".NET 6的Tr
千家信息网最后更新 2025年11月09日.NET 6的TryGetNonEnumeratedCount方法怎么用
本篇内容主要讲解".NET 6的TryGetNonEnumeratedCount方法怎么用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习".NET 6的TryGetNonEnumeratedCount方法怎么用"吧!
一、举例
尝试下列代码:
var b = new B();Console.WriteLine($@"{b.Count()}");var a = new A ();Console.WriteLine($@"{a.Count()}");class A : IEnumerable { public IEnumerator GetEnumerator() { throw new NotImplementedException(); } IEnumerator IEnumerable.GetEnumerator() { throw new NotImplementedException(); }}class B : A ,ICollection{ public int Count => 10086; public bool IsSynchronized => throw new NotImplementedException(); public object SyncRoot => throw new NotImplementedException(); public void CopyTo(Array array, int index) { throw new NotImplementedException(); }}
你会发现,b.Count()能够执行,而a.Count()会报错:

二、原理
这是由LINQ内部实现造成的。
对于某些集合类型,如果无法快速确定集合元素数量——例如Count属性,调用Count()则必须枚举整个集合以确定元素的数量。
在某些情况下,枚举会严重影响程序性能,比如EF Core下使用IQueryable.Count()就需要访问数据库获取全部记录才能计数。
因此,更高效地计算序列中的元素数,就是使用TryGetNonEnumeratedCount方法,如果可以快速计数,该方法将返回true并将计数作为out变量返回。
结论:
建议你始终使用以下格式代码,去获取可枚举类型的元素总数:
if (!enumerable.TryGetNonEnumeratedCount(out var count)){ //使用其他方式获取元素数量}到此,相信大家对".NET 6的TryGetNonEnumeratedCount方法怎么用"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
方法
元素
数量
代码
内容
类型
学习
实用
更深
兴趣
原理
变量
实用性
实际
就是
属性
序列
建议
性能
总数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
pg数据库符号
软件开发需要绘制哪些图
中学生网络安全教育计划
工业控制系统软件开发文档
计算机网络技术硬件
菜小依网络技术工作室
360 网络安全部
代理服务器运行管理系统
er图对数据库
英语课堂视频软件开发
亿签网服务器异常咋回事
生鲜数据库
黑晶网络技术有限公司
武汉大学转网络安全
网商软件开发上市公司
福州戴尔服务器诚邀品鉴
串口服务器安装不了
数据库修改字段多个值
数据库合并显示f2
网课时期网络安全
怎么知道服务器是否被攻击
服务器设置mp4播放器
无法登陆服务器收不了邮件
万可联互联网科技有限公司
jdbc返回数据库数据
网络服务器IP对接管理
excel 安全检查数据库
数据库数据安全管理
网络安全审计系统的原理
哈利波特1服务器几点更新完