我知道已经问过这个问题,但是我找不到任何可以帮助解决我的问题的东西。

我想将aspx页面(Retete.aspx)连接到Microsoft SQL数据库。我在Retete.aspx.cs上收到此错误:


  错误1类型或名称空间名称'GlobalClass'在名称空间'ProiectSera'中不存在(您是否缺少程序集引用?)
  错误指向以下代码行:


ProiectSera.GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);


其中ProiectSera是项目名称,GlobalClass是我在数据库上执行操作的文件。

我的using语句是:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ProiectSera;


目标框架设置为.net-4.5

我应该怎么做才能解决这个错误?

更新资料
我的GlobalClass.cs是:

using System;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.IO;
using ProiectSera;

using System.Data.Services;

namespace ProiectSera.App_Code
{
    public static class GlobalClass
    {
        static public void Update(string _param1, string _param2)
        {//function to update}
}
}


App_Code是GlobalClass.cs所在的文件夹。我尝试过

ProiectSera.App_Code.GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text); //


但我有同样的错误。然后将GlobalClass.cs放在项目的根目录中。我还从namespace ProiectSera.App_Code删除了.App_Code

更新1
我的Retete.aspx.cs是

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ProiectSera;
using ProiectSera.App_Code;

namespace ProiectSera
{
    public partial class Retete : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSave_Click(object sender, EventArgs e)
        {
            string intValRefTempSol;
            string intValRefTempAer;

 //           intValRefTempSol = ValRefTempSol.Text;
 //           intValRefTempAer = ValRefTempAer.Text;


   //         ProiectSera.App_Code.GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);
            GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);
}
}
}

最佳答案

您的GlobalClass位于名称空间ProiectSera.App_Code中。

所以类名是ProiectSera.App_Code.GlobalClass

确保在ProiectSera命名空间中也没有ProiectSera类,否则,如果在顶部声明using ProiectSera,它将尝试使用它(作为一般规则,请勿将任何相同的类命名为作为您的命名空间)。

如果仍然不起作用,则可能要尝试使用global命名空间:

global::ProiectSera.GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);


看看是否可行:如果不行,并且GlobalClass在同一个项目中,那么还有其他东西你还没有给我们看

更新资料

如果您确定两个文件都在同一项目/程序集中,那么想到的唯一另一件事就是GlobalClass.cs并未真正被编译。确保将Build Action设置为Compile(您可以在解决方案资源管理器中的GlobalClass.cs上单击鼠标右键,然后选择Properties来查看生成操作)。

10-08 01:53