'x.cs'中的类型'x'与导入的类型'x'冲突

时间:2011-07-22 12:48:40

标签: c#

造成此构建错误的原因是什么?

中的 AriaLibrary.AriaBL.Book '

  

'我:\编程\ MyProgram \库\ AriaNetDelijanCorporation \ AriaLibrary \ AriaBL \ AriaBL.cs'

与导入的

冲突
  

中的'AriaLibrary.AriaBL.Book'      

'我:\编程\ MyProgram \库\ AriaNetDelijanCorporation \ AriaLibrary \ BIN \调试\ AriaLibrary.exe'

。      

使用中定义的类型   'I:\编程\ MyProgram \库\ AriaNetDelijanCorporation \ AriaLibrary \ AriaBL \ AriaBL.cs'

     

我:\编程\ MyProgram \ Library \ AriaNetDelijanCorporation \ AriaLibrary \ UI \ Document \ Book \ frm_AddNewBookISO.cs 24 16 AriaLibrary

2 个答案:

答案 0 :(得分:52)

您已添加对项目输出的引用。

换句话说,在尝试编译您的项目AriaLibrary时,为了生成AriaLibrary.exe,编译器会导入程序集AriaLibrary.exe。在磁盘上,此文件存在于以前的版本中。

因此,编译器会找到该类中的两个,一个尝试现在编译,另一个来自之前的构建,因此您会收到警告。

由于没有正当理由将输出项目作为对自身的引用导入,因此您可以安全地删除该引用。

检查AriaLibrary项目的引用列表,并删除名称相同的引用AriaLibrary。

答案 1 :(得分:3)

当代码中的Type命名空间与导入的DLL中的命名空间具有相同的签名时,会发生这种情况。

因此,在您的情况下,您的代码中似乎有一个名称空间AriaLibrary.AriaBL.Book,它也存在于引用的程序集中