2011-06-27 57 views
-1

假設我有一個函數:調用方法,而不是在parenthsis

Protected Sub UploadFile(file As String) 
    ....... 
End Sub 

然後,我可以做follwing

UploadFile(file) 

但我想這樣做:

file.UploadFile() 

看起來像我在這裏缺少邏輯,但仍然 - 是否有可能做點狀記號?

+1

你爲什麼要這樣做? –

回答

4

我想你想要一個擴展方法。

Module StringExtensions 
    <Extension()> 
    Public Sub Upload(ByVal fileName As String) 
     ' ... Upload the file, now. 
    End Sub 
End Module 
+0

使用擴展方法而不是常規方法是否是一種很好的做法? – user194076

+2

向這樣一個普通的類添加擴展方法通常不是一個好主意。它會讓intelisense變得非常快。但是,在某些情況下,它會使您的代碼更流暢。看看你是否可以限制方法的範圍,以便它只在你想要的時候出現。 –

+0

謝謝!這就是我需要知道的。 – user194076

0

我假設上傳文件是一個方法,你試圖調用你定義它的同一個類。如果是這樣的話,你所要做的就是

this.UploadFile(); 

並調整UploadFile()方法從成員變量而不是參數讀取文件。

希望能給你足夠的信息開始。

相關問題