【问题标题】:The Type Class (app_Code class) exists in both “solution.dll” and “App_Code.lfoxsb3d.dll'类型类(app_Code 类)存在于“solution.dll”和“App_Code.lfoxsb3d.dll”中
【发布时间】:2013-07-08 07:37:39
【问题描述】:

我正在处理 asp.net 4.0 web 项目,当我运行它时,我收到了错误消息

“myproject.MyClass”类型存在于两者中 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET 文件\root\d76f4ecb\381a37f3\assembly\dl3\824d7fec\6a842c0e_ad7bce01\myproject.DLL' 和 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET 文件\root\d76f4ecb\381a37f3\App_Code.lfoxsb3d.dll'

MyClass.cs 位于 App_Code 文件夹中 我尝试清理 ASP.net 临时文件夹,清理解决方案,重置 IIS,但没有运气,我找到了一个解决方案 Here 所以我尝试重命名 App_Code,重命名后它运行良好,但是当我登录到我的应用程序时,它给了异常

Unable to cast object of type 'ASP.masterpage_master' to type 'myproject.MasterPage'

在这条线上

((MasterPage)Master).PageSection = "Accountant";

我取消重命名 App_Code(因为它不能解决我的问题) 如何修复此类型存在错误? 我正在使用 Telerik.Web.UI v4.0.30319

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    发生这种情况是因为您的项目是一个“Web 应用程序”,当您在 Visual Studio 中编译时,您网站中的所有代码(包括 App_Code 中的代码)都会被编译到一个名为 MyProject.dll 的程序集中。当您运行您的站点时,asp.net 知道一个名为 App_Code 的“特殊”文件夹,并将其内容编译为具有唯一名称的程序集,在本例中为“App_Code.xxxxxxxxx.dll”。

    一种解决方案是将 App_Code 文件夹重命名为其他名称,例如 BusinessLogic。

    【讨论】:

      【解决方案2】:

      您也可以创建一个新文件夹并将所有 app_code 文件放在该文件夹中。

      【讨论】:

        猜你喜欢
        • 2012-02-29
        • 2011-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-05
        • 1970-01-01
        • 2010-12-04
        相关资源
        最近更新 更多