使用和名称空间

时间:2014-01-31 12:06:34

标签: c#

使用系统或其他命名空间放置在何处? 编写代码的正确或更好的方法是什么?为什么? 根据我的c#培训师,它是第二个,但我看到第一个。

using System;
namespace Program
{
    class SomeClass
    {
    }
}

namespace Program
{
using System;

    class SomeClass
    {
    }
}

根据我的c#培训师,它是第二个,但我看到第一个。

4 个答案:

答案 0 :(得分:3)

using指令的范围仅限于它出现的文件。

创建使用别名,以便更容易将标识符限定为命名空间或类型。 using alias指令的右侧必须始终是完全限定类型,而不管之前使用的using指令。

创建using指令以使用命名空间中的类型,而无需指定命名空间。 using指令不允许您访问嵌套在您指定的命名空间中的任何命名空间。

参考:http://msdn.microsoft.com/en-us/library/sf0df423.aspx

答案 1 :(得分:2)

这是你的选择。如果您有一个包含多个名称空间的代码文件,但只想在其中一个名称空间中使用名称空间导入,则第二个可能很方便。但是,到目前为止,我所看到的大多数编码指南都指定一个文件最多只能包含一个名称空间,而文件顶部的使用按字母顺序排列。

答案 2 :(得分:1)

默认情况下,Stylecop要求您在名称空间中放置使用 - 请参阅here;出于以下原因:(来自链接页面):

在命名空间元素中使用指令而不是在命名空间之外放置使用指令之间存在细微差别,包括:

  1. 在命名空间中放置using-alias指令可以消除编译器在冲突类型之间的混淆。

  2. 在单个文件中定义多个名称空间时,在名称空间元素中放置using指令可用作范围引用和别名。

答案 3 :(得分:0)

使用始终位于文档的顶部。