为什么在我的App_Code文件夹的子文件夹中找不到类

本文关键字:文件夹 找不到 Code 我的 App 为什么 | 更新日期: 2023-09-27 17:47:22

当我将类文件放在App_Code文件夹的子文件夹中时,收到以下错误:

errorCS0246:未能找到类型或命名空间名称"MyClassName"(是否缺少using指令或程序集引用?(

此类根本不在命名空间中。有什么想法吗?

为什么在我的App_Code文件夹的子文件夹中找不到类

您需要将codeSubDirectories添加到web.config 中的编译元素中

<configuration>
    <system.web>
      <compilation>
         <codeSubDirectories>
           <add directoryName="View"/>
         </codeSubDirectories>
      </compilation>
   </system.web>
</configuration>

检查文件的BuildAction属性。这应该设置为"编译">

是否可能没有将文件夹设置为IIS(或web服务器(中的应用程序?如果不是,则使用的App_Code是文件夹(或上一个应用程序(中的代码。

确保文件夹被标记为应用程序,并使用正确版本的ASP。NET。

这可能不是正确的方法,但我发现它是最简单的。

像往常一样在主文件夹中创建类,然后用鼠标将其移动到子文件夹中。重新编译,一切都会好起来的。

当您将文件夹添加到app_code时,如果我没有记错的话,它们会被不同的名称空间分隔,使用默认名称空间作为根,然后为每个文件夹添加。

在Visual Studio(至少在2010年,但我也记得以前的版本(中,您可以在解决方案资源管理器中右键单击文件夹,然后选择"包含在项目中"。

然后在每个文件的属性选项卡上(或一次选择所有文件(,为"生成操作"属性选择"编译"。

这对我很有效。