gpt4 book ai didi

c# - Linq 获取所有实现接口(interface)的对象

转载 作者:太空宇宙 更新时间:2023-11-03 13:47:44 25 4
gpt4 key购买 nike

是否有可能得到这样的东西:

return Session.Query<A>().Where(x => x is B).ToList();

其中 B 派生自 A 为接口(interface)工作(即获取实现特定接口(interface)的所有对象)?谢谢。

最佳答案

您不能直接将此语句转换为 SQL。首先,您必须评估查询或使用 AsEnumerable()

return Session.Query<A>().AsEnumerable().Where(x => x is B).ToList();

或者:

return Session.Query<A>().AsEnumerable().OfType<B>().ToList();

AsEnumerable 之后的部分将在内存中执行。

关于c# - Linq 获取所有实现接口(interface)的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14707837/

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