从使用的命名空间中排除一个类

时间:2012-09-13 12:50:49

标签: c# .net namespaces

我所有C#文件的第一个声明是“使用System; ”。 现在使用框架版本4,此命名空间包含一个名为“Action”的类。这也是我在常用命名空间中使用自己代码的类的名称。现在有一个冲突。当然,我可以通过使用显式的“MyNamespace.Action”解决这个冲突,我之前使用过“Action”。这是数百甚至数千行。或者我无法使用System命名空间,这当然会导致许多其他问题。我想写一些类似“使用System但不是System.Action”的内容,但我找不到这样做的声明。 有什么想法吗?

2 个答案:

答案 0 :(得分:8)

不,你不能。

但您可以添加using Action = MyNamespace.Action。不过,对于新开发者而言,这将是非常令人困惑的,因为从3.5开始,Action就是.net的基本组成部分,所以我强烈建议你重命名你的班级。

答案 1 :(得分:1)

using指令有两个用途:

允许在命名空间中使用类型,因此您不必限定在该命名空间中使用类型:

using System.Text;

为命名空间或类型创建别名(你可以为这个创建)。

using Project = PC.MyCompany.Project;

using关键字也可用于创建using语句,该语句定义何时处置对象。有关详细信息,请参阅使用Statement。

http://msdn.microsoft.com/en-us/library/dd264736.aspx