程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> 找不到類型或命名空間名稱“Server”(是否缺少 using 指令或程序集引用?)

找不到類型或命名空間名稱“Server”(是否缺少 using 指令或程序集引用?)

編輯:ASP.NET基礎
今天將webserice裡面的一個代碼,拷到一個C#類,結果運行編譯錯誤。
DataBase = Server.MapPath("data.mdb");
報錯:找不到類型或命名空間名稱“Server”(是否缺少 using 指令或程序集引用?)

但是我的確引用了名字空間using System.Web;為什麼呢?
因為Server的完整路徑是System.Web.HttpContext.Current.Server。using System.Web是顯然不夠的;但是在從內置Page類繼承的類中可以直接寫Server.MapPath"data.mdb"),應該是因為Page類已經包含了這些類路徑。

由此總結對這類錯誤的解決方法如下
1、確保正確的程序集引用:
確保引用了包含命名空間的程序集。如果是在 Visual Studio .NET 中進行開發,則可以轉到項目菜單並單擊添加引用。在 .NET 選項卡上,選擇包含您要導入的命名空間的程序集,或者浏覽到包含程序集的文件夾。如果在使用命令行編譯器,則向編譯語句中添加相應的開關 (/reference)。
2、正確的命名空間:
(1)*如果你從Page類繼承的類中執行這條語句,才可以簡單地使用
DataBase = Server.MapPath("data.mdb");
(2)如果在普通類中
A)將using 語句放在包含類型引用的代碼文件的頂端,確保在將命名空間導入項目:
using System.Web;
DataBase = HttpContext.Current.Server.MapPath("data.mdb");
B)如果沒有using語句,則完全限定對類型的引用:
DataBase = System.Web.HttpContext.Current.Server.MapPath("data.mdb");
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved