![](/img/trans.png)
[英]The type or namespace name does not exist in the namespace ''are you missing an assembly reference ?"
[英]The type or namespace name does not exist in the namespace (are you missing an assembly reference?)
我知道已經有人問過這個問題,但我找不到任何可以幫助解決我的問題的東西。
我想將我的aspx
頁面 ( Retete.aspx
) 連接到 Microsoft SQL 數據庫。 我在Retete.aspx.cs
上收到此錯誤:
錯誤 1 命名空間“ProiectSera”中不存在類型或命名空間名稱“GlobalClass”(您是否缺少程序集引用?)錯誤指向以下代碼行:
ProiectSera.GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);
其中ProiectSera
是項目名稱, GlobalClass
是我對數據庫進行操作的文件。
我的使用語句是:
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 放在項目的根目錄中。 我也從刪除.App_Code namespace ProiectSera.App_Code
UPDATE1我的 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
,則GlobalClass.cs
並未實際編譯。 確保Build Action
設置為Compile
(您可以在解決方案資源GlobalClass.cs
中右鍵單擊GlobalClass.cs
並選擇Properties
看到構建操作)。
如果您使用的是 VS.NET:
確保以下...
using ProiectSera;
)。 假設這是正確的命名空間。 檢查 GlobalClass 類的命名空間,並在希望使用其功能的類中相應地使用它。然后,只需在您的代碼中調用它,假設 Update 是 GlobalClass 的靜態方法。
GlobalClass.Update(ValRefTempSol.Text, ValRefTempAer.Text);
編輯:鑒於您現在已經發布了 GlobalClass 代碼,您可以看到此類的命名空間是ProiectSera.App_Code
;。 所以你需要在另一個類中using ProiectSera.App_Code;
把它作為你的 using 語句using ProiectSera.App_Code;
. 然后通過簡單的 GlobalClass.Update 調用它,如上所述。
如果您不了解命名空間在 C# 中的工作原理,那么我建議您查看一下 ( https://msdn.microsoft.com/en-us/library/dfb3cx8s.aspx )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.