2011-09-01 52 views
0

在我的情况下,我在根文件夹(我的项目的/)中使用了一个类,我在各种.cs文件中使用了Ten.class。错误CS0433:ascx存在于两个DLL中

当我预编译我的应用程序时,我没有得到任何错误。当我调用X.aspx调用浏览器 我得到一个错误,因为X.aspx.cs的代码包含在App_Web_xqlu1c5t.dll和TenManager.dll(TenManager是命名空间)中。

编译器错误信息:

CS0433:类型 'ASP.usercontrols_contenteditor_ascx' 两个 'App_Web_xqlu1c5t.dll' 和存在 'TenManager.dll'

如果我转换这个网站进入一个web应用程序,我选择“Publish Site”,所有代码都在TenManager.dll中编译。

如何解决?

回答

0

this看起来像是手头的问题吗?

TypeName1中都存在TypeName2和TypeName3 类型的应用程序引用两个不同的组件包含相同的命名空间和类型,产生歧义。

要解决此错误,请使用/ reference(导入元数据)(C#编译器选项)编译器选项的别名功能,或者不要引用其中一个程序集。

1

一个解决方案是从根文件夹路径中删除所有文件。在Windows 7:

c:\Users\{username}\AppData\Local\Temp\Temporary ASP.NET Files\root\ 

如果不工作,然后从路径

c:\Users\{username}\AppData\Local\Temp\Temporary ASP.NET Files\application_name\ 

删除临时的dll文件,当您编译应用程序将被重建。

+0

是的,这通常可以解决此错误,就像重建解决方案一样。有时候只需重新启动VS并重建工作。 –

0

尝试在整个解决方案中搜索"usercontrols_contenteditor_ascx"以查找任何重复项。有时,如果您复制usercontrol或page并且不更改类名称,则会显示此错误。

如果有重复项,您需要更改其中之一的类名称