2015-06-19 69 views
1

我在我的项目中有一个类MyComponent正在包含在另一个程序集(MyAssembly)中。这个类在我的项目的许多地方被用作各种函数或变量类型的参数,例如.net中的同一类名称和程序集名称

private void MyMethod(MyComponent com) 
{ 
    //Method Implementation 
} 

MyComponent varCom; 

但我想包括具有相同的名称作为我的阶级即MyComponent的组件。现在无论何时使用MyComponent,因为它开始显示错误

“'MyComponent'是一个'命名空间',但像'type'”一样使用。

解决它的一种方法是为MyComponent变量的所有位置提供参考路径的完整路径,如下所示。

MyAssembly1.MyComponent varCom; 

但它需要很多代码更改,我不想要做。是否有任何其他出路,这个问题

PS的错误是“‘MyComponent的’是‘命名空间’,但使用像一个‘类型’”

+1

为什么不改变程序集(及其名称空间)?单词命名空间并不是那么实用。或者您可以更改组件的名称(使用重命名相当容易)。或者你可以使用'using',尽管这仍然需要你为每个有这个问题的文件添加'using'。 – Luaan

+2

你确定错误是关于*程序集*而不是*命名空间*吗? –

+2

那么,只要不使用'使用MyAssemblyNamespace'并在程序集namr之前使用它写入命名空间 – cubrr

回答

0

我想在你的背景下,最简单的解决办法是重新命名在引用其他程序集之前,通过重构您的MyComponent类。右键单击类名Refactor重命名。这应该自动更新所使用的任何地方的类名称。

或者你也可以为MyComponent名字空间做同样的事情。

相关问题