我可以在Visual Studio 2010中使用和其他c#代码块来折叠foreach吗?
我可以折叠foreach,在Visual Studio 2010中使用和其他C#代码块,就像我可以折叠方法,属性,类,名称空间等一样?有时候这会很有帮助。我可以在Visual Studio 2010中使用和其他c#代码块来折叠foreach吗?
您可以使用#region #endregion
指令来创建可折叠区域。
更新:
顺便说一句,你为什么需要这个功能呢?保持你的方法尽可能短是一个很好的原则(鲍勃叔叔称之为extract until you drop
)。如果你坚持下去,你将不需要额外的可折叠区域。
适合短期,但我不想让他们留在代码中。谢谢。 – 2010-10-26 12:03:01
A've又增加了一个想法 – 2010-10-26 12:10:43
我坚持这些原则,但有时候会有代码的原子单元运行时间长,不能或不应该被分解:当在外部调用方法时具有很多参数的API;当需要重用代码的机会是零时。 – 2010-10-26 12:15:26
将代码从foreach循环切出并粘贴到函数中,然后将函数折叠掉?
例如,
public void MyMessyFunction()
{
// ...
foreach(string foo in bar)
{
// Do ugly stuff
}
// ...
}
假作
public void MyMessyFunction()
{
// ...
foreach(string foo in bar)
{
DoUglyStuff(foo, bar);
}
// ...
}
#region Stuff I want to hide
public void DoUglyStuff(string foo, List<string> bar)
{
// Do ugly stuff
}
#endregion
我记得,你可以在Visual Studio 2010中崩溃的任意区域尽量选择区域,然后按Ctrl + M的两倍(假设C#键绑定)。
在VS2008中,可以在Edit - > Outlining下找到它。我没有安装2010年,所以不能轻易尝试。
编辑:实际上,它看起来像VS2008的“隐藏选择”功能(在同一地方找到)有类似的地方,但它似乎只在某些语言中可用。
'我可以'还是'我怎么能'?首先 - 你不能。第二 - 看到打击(并请编辑你的问题) – abatishchev 2010-10-26 11:58:10
什么是非常有用的评论! – 2010-10-26 12:17:28