有条件的Lambda表达式?

Chr*_*ris 1 c# lambda

我有一个lambda表达式,目前看起来像这样:

item => Reports.Add(item)
Run Code Online (Sandbox Code Playgroud)

我想修改它,使其具有条件性,并且基本上检查Reports.Contains(item)是否返回false,然后执行Reports.Add(item)操作.这可以在一条线上使用lambda吗?

克里斯

Ani*_*Ani 8

Action<ItemType> action = item => { if(!Reports.Contains(item)) Reports.Add(item);};
Run Code Online (Sandbox Code Playgroud)

这应该做,但这取决于你如何定义"一条线",真的.


Jim*_*mmy 5

替代Ani的建议:使报告成为HashSet.