我刚刚在Visual Studio 2010中发现了一个令人烦恼的错误。看起来Sort Usings功能正在以错误的顺序对我的使用进行排序。看看这段代码:
namespace Test
{
using Test.WebPages.Utilities;
using Test.WebPages.WebRef;
using Test.WebPages.ViewModels;
namespace WebPages
{
namespace Utilities { class A { } }
namespace WebRef { class B { } }
namespace ViewModels { class C { } }
}
public class Program
{
public static void Main()
{
var a = new A();
var b = new B();
var c = new C();
}
}
}
显然排序顺序是错误的。当你使用StyleCop SA1210时很烦人。
答案 0 :(得分:0)
我认为Sort Usings不会对命名空间内的使用做任何事情
答案 1 :(得分:0)
using Test.W; // place W here, initially
using Test.U;
using Test.V;
using Test.X;
using Test.Y;
namespace Test
{
namespace U { class A { } }
namespace V { class B { } }
namespace W { class C { } }
namespace X { class D { } }
namespace Y { class E { } }
public class Program
{
public static void Main()
{
new A();
new B();
new C();
new D();
new E();
}
}
}
对上述用法进行排序会导致:
using Test.U;
using Test.W; // place W here, initially
using Test.V;
using Test.X;
using Test.Y;
当然是错的。但是,我最初尝试了这个订单:
using Test.U;
using Test.V;
using Test.X;
using Test.Y;
using Test.W; // place W here, initially
对此进行排序会产生正确的顺序:
using Test.U;
using Test.V;
using Test.W; // place W here, initially
using Test.X;
using Test.Y;
很奇怪。