![](/img/trans.png)
[英]Resharper says to convert foreach to LINQ, but is it possible?
[英]Resharper Convert foreach to LINQ using extension methods
我正在使用Resharper 7,有时当我编写foreach循环时,它建议我将其转换为LINQ。 问题是我无法找到一个设置,我可以选择使用扩展方法而不是LINQ查询形式创建LINQ。
我知道这应该是可能的,因为它曾经像以前一样使用我的旧设置(我不得不将它们恢复为默认值,因为它们因某些原因完全被破坏)。
这是foreach循环:
var idList= new List<string>();
foreach (var entity in entityList)
{
if(entity.EntityPathOrNull==null)
idList.Add(entity.Identity);
}
这是它的转换方式:
var idList = (from entity in entityList where entity.EntityPathOrNull == null select entity.Identity).ToList();
这就是我想要它的样子:
var idList = entityList.Where(entity => entity.EntityPathOrNull == null).Select(entity=> entity.Identity).ToList();
问题是,有谁知道这个设置的位置? 我到处搜索和谷歌搜索但无法找到它。
这是我所知道的从查询语法转换它的唯一方法。 也许这可以以某种方式成为标准动作。 否则,您必须手动或通过快捷方式调用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.