.NET 6的TryGetNonEnumeratedCount方法怎么用
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解".NET 6的TryGetNonEnumeratedCount方法怎么用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习".NET 6的Tr
千家信息网最后更新 2026年11月02日.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安全错误
数据库的锁怎样保障安全
华服互联网科技靠谱吗
中关村互联网科技集团
互联网科技官网
平安科技 互联网
融贸通互联网科技
狮子座互联网科技培训
重庆科技学院互联网
科技类的互联网平台
顺网科技2021年互联网排名
互联网科技公司需要的职位
中国的互联网科技企业的崛起
互联网科技研发水平
西安小鹰速贷互联网科技有限公司
佛山市拉法互联网科技有限公司
卓翼科技产业互联网合作
无锡工业互联网科技有限公司
雨阳互联网卡科技有限公司
互联网相关科技技术
图游互联网科技
重庆科技产业互联网有哪些
哈尔滨大商圈互联网科技有限公司
互联网通讯科技
卓越科技互联网 招聘
金融科技和互联网金融
岳阳华臻互联网科技有限公司
广州百诚互联网科技有限公司官网
互联网科技资金流入
宇信科技在杭州互联网排第几
长沙渺峰互联网科技有限公司
科技信息时代互联网发展