我想從類中調用一個靜態函數,但intellisense沒有選擇它?試圖在一個類中調用靜態函數
函數返回
public static ArrayList GetInfo(int infoID)
,我從別的地方在另一類叫,我試圖做類似
var myitem = myClassName.GetInfo(x);
但智能感知犯規把它撿起來......我鍵入myClassName。
我怎麼稱呼它?如果可能的話
PS:我不能改變的方法:(簽名
我想從類中調用一個靜態函數,但intellisense沒有選擇它?試圖在一個類中調用靜態函數
函數返回
public static ArrayList GetInfo(int infoID)
,我從別的地方在另一類叫,我試圖做類似
var myitem = myClassName.GetInfo(x);
但智能感知犯規把它撿起來......我鍵入myClassName。
我怎麼稱呼它?如果可能的話
PS:我不能改變的方法:(簽名
通常你有一個namespace
爲好,加上靜態方法必須是它自己的類中,例如,像這樣:
namespace MyHelpers {
public static class ArrayHelpers {
public static ArrayList GetInfo(int infoID) { ... }
}
}
現在,無論你在哪裏,在你的應用程序,如果該庫是參照當前項目只需調用它
ArrayList myitem = MyHelpers.ArrayHelpers.GetInfo(x);
記住,你需要給的完整路徑的d。如果您的命名空間被稱爲namespace Model.Helpers { ...
那麼完整的路徑將是:
ArrayList myitem = Model.Helpers.ArrayHelpers.GetInfo(x);
是您正在使用的using
聲明
using Model.Helpers;
可以使用
ArrayList myitem = ArrayHelpers.GetInfo(x);
這個工作謝謝 – user710502
靜態函數不能用變量名來訪問,但與類名所以basicly就叫要麼只是GetInfo(int)
(如果你想。在GetInfo()所在的類中)或YourClass.GetInfo(int)
(GetInfo()所在的類之外)
如果要在類外部調用,請確保在兩者中使用相同的名稱空間,或您正在使用適當的using
陳述。
'myClassName'看起來像一個類名。如果它是一個實例,那麼代碼將不會編譯。 –
@大衛哦..我以某種方式認爲它是可變的,因爲它以小寫字符開頭:| – flai
對不起myClassName是類名 – user710502
您是否在您的項目的子文件夾中創建了課程?如果是這樣,你需要調用它像這樣:
subfolder.myclassname.getinfo()
這是否發生在Visual Studio的每個單一版本中?我認爲是因爲你沒有說你正在使用哪個版本。 –
你能否在你的問題中增加一些代碼?上下文在這裏可能很重要.. –
確保您的課程是公開的或者您嘗試使用的地方是否可訪問。 –