添加第二个<%@ Register%>到我的页面的行会导致编译错误

时间:2009-06-12 21:55:56

标签: c# asp.net

当我只有一个<%@ Register%>在我的页面中,它加载正常。

当我添加第二个时,它给了我这个编译错误:

  

编译器错误消息:CS0433:   类型'ASP.test1_ascx'存在于两者中   “C:\用户\我\应用程序数据\本地的\ Temp \临时   ASP.NET   文件\ ROOT \ c2d75602 \ aae4f906 \ App_Web_dta-e2tq.dll”   和   “C:\用户\我\应用程序数据\本地的\ Temp \临时   ASP.NET   文件\根\ c2d75602 \ aae4f906 \ App_Web_layerwindow.ascx.cdcab7d2.zxul1sik.dll'

(略有匿名)

有什么想法吗?

编辑:我刚注意到的其他信息:YSOD中虚线上方的行说:[System.Diagnostics.DebuggerNonUserCodeAttribute()]当我搜索有关此信息时,我找到了一个页面告诉我检查以确保我没有任何打开的括号我没有关闭。还没有找到,但这可能是问题的一部分。

编辑:唉。此时只想杀死电脑。在daughtkom建议创建一个新项目以查看代码是否从头开始工作之后,我做了那个并且它有效。然后我决定创建一个新的控件并将Test1代码复制到那里......然后它就开始工作了。 (没有对Test1或Default.aspx进行任何更改,只是创建了Test1-2.ascx。)然后我将Test2的链接添加到Default.aspx中...现在它给了我同样的错误,只是使用了test2。而创建一个Test2-2.ascx并不是这次修复它。

4 个答案:

答案 0 :(得分:6)

删除临时文件或重新启动网络服务器。

答案 1 :(得分:1)

我最终设置了“< compilation batch =”false“>”在我的web.config文件中,它解决了这个问题。我从一篇MSDN文章中找到了它......某处。如果我再次找到该链接,我会发布它。

答案 2 :(得分:0)

检查test1.ascx.cs和test2.ascx.cs中的类名。

检查test2.ascx的Inherits属性

答案 3 :(得分:0)

删除错误消息中提到的文件夹中的所有DLL。另外,请检查以确保test2.ascx.cs的代码不会从test1继承。