.net中的类名和程序集名称相同

时间:2015-06-19 05:20:13

标签: c# .net naming-conventions name-conflict

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

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

MyComponent varCom;

但是我想要包含一个与我的类名相同的程序集,即 MyComponent 。现在每当我包含这个程序集时,无论在哪里使用MyComponent,因为它开始显示错误

  

“'MyComponent'是'命名空间',但用作'type'”。

解决问题的一种方法是在MyComponent变量的所有位置给出参考路径的完整路径,如下所示。

MyAssembly1.MyComponent varCom;

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

P.S错误是“'MyComponent'是'命名空间',但用作'类型'”

1 个答案:

答案 0 :(得分:0)

我认为在您的上下文中最简单的解决方案是在引用其他程序集之前通过重构重命名MyComponent类。右键单击类名,Refactor,Rename。这应该在它使用的任何地方自动更新类名。

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