2008-09-14 127 views
19

问题在于,您包含多个程序集,并在代码文件的顶部添加'using namespaceX'。
现在您要创建一个类或使用在多个名称空间中定义的符号,例如 System.Windows.Controls.Image & System.Drawing.Image如何解决.Net命名空间与'using'关键字冲突?

现在,除非你使用完全合格的名称,将有婴儿床/建立自己的错误由于“使用”的声明在顶部右侧歧义inspite。这里有什么出路?

(另一个知识基础后..我找到了答案约10分钟搜索,因为我不知道正确的关键字搜索之后)

+0

由于接受答案指出,使用别名,但试图包括在整个代码库(只有一个名称空间/类的别名,他们应该很容易区分)。 – kokos 2008-09-14 13:48:01

回答

28

使用别名

using System.Windows.Controls; 
using Drawing = System.Drawing; 

... 

Image img = ... //System.Windows.Controls.Image 
Drawing.Image img2 = ... //System.Drawing.Image 

How to: Use the Namespace Alias Qualifier (C#)

+0

删除我的答案,以减少混乱。 '命名空间别名限定符' - 现在这个名字是我从未想过要用作搜索关键字的东西。 :) – Gishu 2008-09-14 11:04:59

5

本页在名称空间和使用语句上有很好的说明:

http://www.blackwasp.co.uk/Namespaces.aspx

您想了解“创建别名”,将让你做出一个别名为一个或两个名字空间,并与像这样引用它们的部分:

using ControlImage = System.Windows.Controls.Image; 
using System.Drawing.Image; 

ControlImage.Image myImage = new ControlImage.Image(); 
myImage.Width = 200;