'这个类存在于两个dll的.NET问题中

时间:2014-02-21 03:01:41

标签: asp.net

我无法部署我的asp.net 4.5网站,因为我遇到了多个可怕的“类型'myClassX'存在C:\Users\Me\...\whereItsSupposedToBe\C:\Users\Me\AppData\Local\Temp\Temporary ASP.NET Files\root\1randomname\_shadow\2randomname\3randomname\App_web_myClassX.cs.4acf3bb.nommceoi.dll错误。

涉及三个文件。 MyClasses.cs包含MyClassBMyClassCMyClassD的定义。 Page1.aspxpage2.aspx<%page %>标记中包含MyClasses.cs的src属性。

我到目前为止做了以下事情:

  • 清理了解决方案和项目
  • 关闭VS12
  • 删除了root \ 1randomname目录并清空了回收站
  • 重新启动#^ $ @ ing计算机
  • 删除了有问题的文件,清理和构建,创建了新文件和 重命名所有涉及的文件名,类和命名空间(哦是的,他们 以前都是'myOGClassA'....)
  • 引入了虚拟变量,希望这会改变dll
  • 删除了bin和obj目录
  • batch="false"属性添加到了compilation元素 这里提到的web.config文件:ASP.Net error: "The type 'foo' exists in both "temp1.dll" and "temp2.dll"

有些东西让我想知道是否有两个aspx文件引用了同一个src文件与它有关。但是到目前为止我看到的所有博客和SO帖子都会导致冲突都来自临时目录。

头开始受伤...有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我已经“修复了问题”,但我不确定为什么会修复它。

要重新创建问题:

  1. 创建新项目 - &gt; ASP.NET Web窗体应用程序。
  2. 创建一个新文件夹(“搜索”)。
  3. 通过craigd(Searcharoo版本1)在Static-Site Search Engine with ASP.NET/C#找到的演示项目zip中添加三个文件。这些文件是Searcharoo.cs,SearcharooCrawler.aspx和Searcharoo.aspx。
  4. 看看SearcharooCrawler.aspx。此时我得到'存在...'错误。如果仍然没有看到错误,请在浏览器中查看项目。当您查看VS12中的.aspx文件时,似乎会出现错误。
  5. 修复:

    1. 创建一个新文件夹(“Happy_App”)
    2. 将Searcharoo.cs移至新的Happy_App。这修复了'exists ...'错误,但现在无法找到Searcharoo.cs'所以......
    3. 从顶部&lt;%paging ...%&gt;删除'Src =“Searcharoo.cs”'属性两个aspx文件中的标记。我相信这个Src属性不再用于ASP.NET 4.5(我可能错了)
    4. 在浏览器中查看并导航至Search / SearcharooCrawler页面。没错! (需要在web.config中添加一些属性才能使searcharoo演示工作,但这不是这篇文章的重点...)
    5. 但真正奇怪的部分 - 我发现将Searcharoo.cs文件移动到Happy_App文件夹后我可以将其移回原始的搜索文件夹而不会出现任何“存在”问题

      为什么?

      如果有人有一个很棒的解释。但是现在我很高兴我可以在不牺牲小动物的情况下获得决议......