我需要做一个LINQ表达式,其中表达式根据层次结构中预期节点的深度而变化。将一个字符串放入linq表达式中?
于是我就用CONCAT在字符串这样的:
var parString = string.Concat(Enumerable.Repeat(".SelectMany(f => f.level)", level));
所以如果4级深我得到的字符串:
string1 = ".SelectMany(f => f.level).SelectMany(f => f.level).SelectMany(f => f.level).SelectMany(f => f.level)"
然后,我想在LINQ表达式中使用此字符串,例如:
List + string1 + .FirstOrDefault(.......);
这甚至有可能吗?我该怎么做?
太多的伪代码,我不明白。为什么你需要那里的琴弦?你的来源是什么,变量是什么,预期的结果是什么? –
为什么你甚至会把它放在一个字符串中呢? – nvoigt
尽管我在下面给出了一个答案,但我相信这是你的意思,请澄清你想要做什么以及为什么要使用字符串?你在使用MoreLinq或类似的东西吗? –