gpt4 book ai didi

c# - Linq 中静态类型的查询

转载 作者:行者123 更新时间:2023-12-02 10:51:02 25 4
gpt4 key购买 nike

当我使用 Linq 查询抽象类型时,它也会获取静态类。

IEnumerable<Type> FilterInheritable()
{
var q = Assembly.Load("Assembly-CSharp").GetTypes()
.Where(x => x.IsAbstract == true);

return q;
}

是否可以过滤掉静态类型?像这样的吗?

IEnumerable<Type> FilterInheritable()
{
var q = Assembly.Load("Assembly-CSharp").GetTypes()
.Where(x => x.IsAbstract == true)
.Where(x => x.IsStatic != true);

return q;
}

最佳答案

由于static类根据定义也是sealed,但是abstract类不能sealed,你可以这样做这个:

var q = Assembly.Load("Assembly-CSharp").GetTypes()
.Where(x => x.IsAbstract && x.IsClass && !x.IsSealed);

我还添加了 IsClass 来排除接口(interface)。

关于c# - Linq 中静态类型的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59404749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com