我们什么时候需要将 using 指令放在命名空间范围内?[复制]

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

提问人:LaTeX 提问时间:2/17/2011 最后编辑:Cody Gray - on strikeLaTeX 更新时间:2/17/2011 访问量:2332

问:

我不知道为什么 Asp.net MVC开发人员将指令放在命名空间中,如下所示。usingSystem.Web.Mvc

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));
        }
    }
}

我们什么时候需要将指令放在作用域内?usingnamespace

C# .NET 命名空间 组织 using 指令

评论

2赞 Jeff Mercado 2/17/2011
我不知道这是否有必要。我能想到的唯一原因可能是,如果你有一个包含多个命名空间的源文件。但是,人们真正多久会这样做一次呢?我希望不是很多。

答:

3赞 C.Evenhuis 2/17/2011 #1

请参阅“using”语句应该在命名空间内部还是外部?

2赞 Artem Koshelev 2/17/2011 #2

这是你的选择。StyleCop 工具警告它是一种最佳做法,但 Visual Studio 生成的文件始终具有命名空间之外的使用。

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