运行Web应用程序项目时,在看似随机的时间页面可能会因CS0433错误而失败:类型存在于多个DLL中.DLL都是生成的DLL,驻留在"Temporary ASP.NET Files"目录中.
将batch ="false"属性添加到web.config文件的"compilation"元素中.
出现此问题的原因是ASP.NET 2.0使用应用程序引用和应用程序的文件夹结构来编译应用程序的方式.如果应用程序的web.config文件中元素的批处理属性设置为true,则ASP.NET 2.0会将应用程序中的每个文件夹编译为单独的程序集.
http://www.sellsbrothers.com/1995
http://support.microsoft.com/kb/919284
如果将.cs文件放在App_Code中并将其构建操作更改为在Web应用程序项目中编译,则可能会发生这种情况.
要么将App_Code中的.cs文件的构建操作作为内容,要么将App_Code的名称更改为其他内容.我更改了名称,因为intellisense不会修复标记为内容的.cs文件.
更多信息,请访问http://vishaljoshi.blogspot.se/2009/07/appcode-folder-doesnt-work-with-web.html
一个可能的原因这个错误是,有哪些是在他们的同名2个aspx页面inherits=
的<@page language=......inherits=>
线.
更改inherits=
名称可以解决错误.
为了防止其他人分享我的问题,我在尝试发布新分支项目的网站时遇到此错误,构建工作完美.
事实证明,我忘记在发布设置 - >配置预编译下删除"允许预编译站点可更新"的复选框.