使用ReSharper将Linq转换为代码
本文关键字:代码 转换 Linq ReSharper 使用 | 更新日期: 2023-09-27 18:13:56
我已经在我的Visual Studio 2010 Pro上安装了ReSharper 8.2.1 Full,我需要将Linq转换为foreach。我在他们的帮助网站上找到了一篇文章,上面说用Resharper可以把linq表达式转换成代码。
当我在Visual Studio中打开应用程序并在查询表达式处放置插入符号并按下Alt+Enter时,我可以看到"转换Linq到方法链",但另一个选项"转换Linq到代码"缺失。我需要添加任何设置才能使其工作吗?有人尝试过这个选项吗?
"Convert LINQ to code"只适用于特定的表达式模式,如foreach
语句或return
语句,可以用yield return
转换成循环。你的代码块是什么?
var data = lines
.Skip(1)
.Select(p=>p.Split(','))
.GroupBy(p=>p[0])
.Select((p,i)=>new Datastore.QuizCategory{
Id = i+1,
Name = p.Key,
QuizQuestions = p.Select(pp=>new QuizQuestion{
Question = pp[1],
Options = pp[2].Replace("'uff1b", ";").Split(";"),
Answers = pp[3].Replace("'uff1b", ";").Split(";")
.Where(p=>string.IsNullOrEmpty(p)==false)
.Select(ppp=>int.Parse(ppp))
.ToArray()
}).ToArray()
}).ToArray();