gpt4 book ai didi

C# Lambda 表达式未返回预期结果

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

我正在使用 lamda 表达式来过滤查询。

基本上,我有由段组成的行,这些段被标记为删除、插入或空。

我想要返回的是已标记为已删除但其任何兄弟未标记为已删除的段。例如,

Line: "Soylent Green is people!" Broken into 2 segments... 
Segment 1: "Soylent Green " (marked as deleted)
Segment 2: "is people!" (not marked as deleted)

应该返回 Segment 1。但是下一个例子,

Line: "Open the pod bay doors Hal!" Broken into 3 segments...
Segment 1: "Open the " (marked as deleted)
Segment 2: "pod bay " (marked as deleted)
Segment 3: "doors Hal!" (marked as deleted)

不应返回任何段。见下面的代码:

return seg => seg.ModType == Deleted &&
seg.Line.Segments.Any(segs => segs.ID != seg.ID &&
segs.ModType != Deleted);

谢谢,我感谢任何关于为什么这不起作用的帮助或建议。

最佳答案

我认为它会是这样的:

return s =>  from segment in s.Line.Segments 
where segment.ModType == Deleted
&& segment.Line.Segments.Any(segs => segs.ModType != Deleted)
select segment

关于C# Lambda 表达式未返回预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1313574/

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