gpt4 book ai didi

c# - 使用 LINQ 在对象图中的所有属性中查找关键字

转载 作者:行者123 更新时间:2023-11-30 21:20:39 25 4
gpt4 key购买 nike

我有一个存储在可变深度的大型对象图中的调查,具体取决于用户选择创建的部分和子部分的数量。我需要能够搜索对象图中每个对象的所有属性,并查看该属性的 .ToString() 是否包含正在搜索的特定关键字。

我可以使用 LINQ 来完成这个,还是必须使用反射和循环?目标是能够说出类似“查找此对象图中的所有对象,其中一个(或多个)属性包含子字符串 test”。

最佳答案

LINQ 不是解决此问题的正确工具 - 如果不在查询中大量使用反射,这对于内置查询操作应该是不可能的。

您当然可以使用反射遍历对象图,但这不是一个快速的解决方案,您可能不得不考虑一些讨厌的事情,例如对象图中的循环。

如果构成对象图的类在您的控制之下,我强烈建议将此功能构建到类中。例如,您可以创建一个接口(interface)并在所有类上实现。然后你可以在不依赖反射的情况下递归地分析对象图。

关于c# - 使用 LINQ 在对象图中的所有属性中查找关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3161212/

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