C#访问文件夹内的类App_Code

时间:2013-10-03 16:54:52

标签: c# asp.net class namespaces

我是c#的新手,我正在创建一个新的网络应用程序。像往常一样,我创建了一般应用程序使用的公共函数库。

我使用VS.net 2008,我创建了一个具有以下结构的项目新项目: 根 --App_Code     globalClass.cs --scripts Default.aspx的 Default.aspx.cs

我需要在App_Code / globalClass.cs中导入/使用globalClass 在Default.aspx或其他任何代码的后面。

这是App_Code / globalClass.cs的内容

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;


namespace sgmedcs.globalClass
{
    public class claseGlobalX : System.Web.UI.Page
    {
        //HttpContext httpActual = HttpContext.Current;

        public string cargarSQL(string queryStr, string queryType)
        {
          //Scripting
        }
    }
}

我还用作命名空间sgmed.App_Code.globalClass和sgmedcs.​​AppCode.globalClass

在我使用sgmedcs.​​globalClass添加的Default.aspx.cs上;或者使用sgmed.App_Code.globalClass;或者使用sgmedcs.​​AppCode.globalClass

所有这些方法都让我“命名空间'sgmedcs'中不存在”类型或命名空间名称'claseGlobal'(您是否缺少程序集引用?)“

我缺少什么,谢谢你的帮助。

2 个答案:

答案 0 :(得分:14)

进入该类的属性,并将Build Action更改为Compile

答案 1 :(得分:0)

另外值得一提的是:如果您的项目是一个"网站"而不是" Web应用程序",属性中没有构建操作选项。但是,由于各种原因可能会出现相同的错误。一个是App_Code类被赋予一个命名空间,而另一个文件没有用一个包含命名空间的完全限定名称来引用它。另一个是您尝试使用该类的页面位于IIS上的一个子目录中,该子目录被标记为一个Application,它为一个完全独立的上下文提供了父目录中的类的内容。 App_Code目录无法访问。在这种情况下,您需要删除子应用程序,或者,如果需要,请为其提供自己的App_Code目录和必要的类。