关于c#:我们什么时候需要在命名空间范围内使用指令?

When do we need to put using directives inside a namespace scope?

本问题已经有最佳答案,请猛点这里访问。

我不知道为什么ASP.NET MVC开发人员将using指令放在System.Web.Mvc名称空间中,如下所示。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace System.Web.Mvc
{
    using System;
    using System.Collections.ObjectModel;

    [Serializable]
    public class ModelErrorCollection : Collection<ModelError>
    {

        public void Add(Exception exception)
        {
            Add(new ModelError(exception));
        }

        public void Add(string errorMessage)
        {
            Add(new ModelError(errorMessage));
        }
    }
}

什么时候需要把using指令放在namespace范围内?


请参见"using"语句应该在命名空间内部还是外部?


这是你的选择。StyleCop工具警告说这是一种最佳实践,但是Visual Studio生成的文件总是在命名空间之外使用using。

命名空间的所有using指令都应该在命名空间内吗?