注意:此“功能”现已添加到 Visual Studio 2015,但问题将持续一段时间,因为并非每个开发人员或每个开发商店都能在最新最好的 IDE 发布后立即访问它。
原始问题:
通常我不会“需要”甚至考虑一个荒谬的特性,例如方法体中的代码区域,但是:我正在重构 VB.NET 代码,其中方法通常运行 500 行或更多代码,并且引用是如此紧密耦合,以至于该代码无法进行简单的重构,例如方法提取。
这就是为什么我认为我会尝试方法体内的区域。我只是想在短期内组织代码。但是IDE不允许我(导致编译器错误。)我只是好奇为什么?似乎代码区域不应该影响编译器、智能感知等。我错过了什么吗?(仍在使用 VS 2005 顺便说一句。)
有趣:这似乎是特定于语言的。在 C# 中可以(我最初没有检查),但在 VB.NET 中不行。
public module MyModule
Sub RunSnippet()
dim a as A = new A (Int32.MaxValue )
#region
Console.WriteLine ("")
#end region
....
得到一个编译器错误,但 C# 版本是好的。