2009-01-15 53 views
1

過去,我並沒有真正使用名稱空間,但是在此項目中,我使用的是SourceSafe,它需要一個項目,它將所有內容放入名稱空間中......在具有已定義名稱空間的'Project'中使用公共靜態類

在過去,我剛剛能夠在App_Code文件夾中創建一個公共靜態類,並在我的應用程序的任何地方訪問它,但現在我似乎無法做到這一點。

例如,我default.aspx.cs看起來是這樣的:

namespace Personnel_Database 
{ 
    public partial class _default : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
       utils.someFunction();//this does not work 

和我utils.cs類看起來是這樣的:

namespace Personnel_Database.App_Code 
{ 
    public static class utils 
    { 

我怎麼能有它,所以我可以調用util.someMethod()在我的默認?我錯了,假設它是一個命名空間問題?我只是想utils.cs可以全局命名空間內Personnel_Database

回答

1

要麼你有一個用指令的命名空間:

using Personnel_Database.App_Code; 
// now you can use everything that is inside the Personnel_Database.App_Code namespace 
namespace Personnel_Database 
{ 
    ... 

或者你使用utils的類的全名quallified(包括其命名空間),例如:

protected void Page_Load(object sender, EventArgs e) 
    { 
    Personnel_Database.App_Code.utils.someFunction(); 
    ... 
0

你只需要添加:

using Personnel_Database.App_Code; 

到您的代碼隱藏文件的頂部。如果您需要在標記訪問它,你可以用它導入:

<%@ Import Namespace="Personnel_Database.App_Code" %> 
0

你需要一個using語句在Personnel_Database Personnel_Database類文件,即

using Personnel_Database.App_Code; 

谷歌/ MSDN的using語句。

0

我錯了,如果我insteada使utils的類:

namespace Personnel_Database 
{ 
    public static class utils  
    { 

它的工作,buut在智能感知不顯示,我怎樣才能得到它這樣做呢?

+0

如果你走這條路 - 我不一定會推薦它,因爲命名空間在訂購代碼時增加了價值 - 您可能還想更改項目屬性中的默認命名空間,以便在項目中創建新類獲取您的首選名稱空間作爲默認值。 – tvanfosson 2009-01-15 12:39:10

相關問題