4
我正在编写将从数组中选择字符串键的代码ApiIds不属于结果对象的属性ApiId。选择不属于另一个对象属性的字符串
我写了下面的代码,但它看起来对我来说是多余的,有没有办法将它合并成一个语句,而不是将对象的HashSet转换为另一个字符串HashSet?
var resultsCached = new HashSet<string>(results.Select(x => x.ApiId));
var missingResults = apiIds.Select(x => !resultsCached.Contains(x));
谢谢。
这种方式对我来说看起来很合理。你为什么要改变它? – 2014-11-03 21:52:09
更短不一定更好...尤其是在较短代码背后的任何魔法不被理解的情况下。(不仅仅是原作者,还有任何稍后会阅读和维护该代码的人)。一个例子是,取决于ilya意味着什么“,而不是将对象的HashSet转换为另一个字符串HashSet?以下使用'Except'的答案可能适用,也可能不适用。 – 2014-11-03 21:58:33