我正在尋找一種方式來做類似於IDisposable接口的接口:當你實現它時,代碼會出現,並且已經寫下了部分方法。我如何複製IDisposable接口「自動」代碼
#Region "IDisposable Support"
Private disposedValue As Boolean ' To detect redundant calls
' IDisposable
Protected Overridable Sub Dispose(disposing As Boolean)
If Not Me.disposedValue Then
If disposing Then
' TODO: dispose managed state (managed objects).
End If
' TODO: free unmanaged resources (unmanaged objects) and override Finalize() below.
' TODO: set large fields to null.
... etc
情況:我有一個龐大的程序,有很多小班。其中一些類有數據,我使用二進制序列化程序來存儲數據。我爲此創建了一個接口ISave。它可以工作,但我必須重新定義Save()方法和每個類中的屬性。其中每個類都有非常非常非常相似的代碼,只有很小的差異(1個代表,1個或1個擴展名)
我使用了很多不同的接口,可以從中受益... if我在界面的某個地方做了一點改動,最後我得到了90多個錯誤,我必須手動安排......它變得非常緩慢。
有沒有辦法寫下我的界面並留下像Idisposable接口一樣的空白點?
編輯:
我不想複製Idisposable的東西。我只想找出如何使出現預先定義的代碼...
我寫下:
Public Class XYZ
Implements ISave()
,當我點擊進入,我在想該地區會出現在我的課底部,以及我的Save()方法將被全部寫入,除了1個小細節外,我可以留空來更改,但函數會在其他地方寫下來......像這樣的僞代碼:
#Region "ISave Interface automatic code"
Public sub Save()
'fill out the blank yourself'
If not Io.File.Exist(BLANKSPACE ) then
... code to create the file and save it
end if
End sub
#end Region
所以我不必去我的90班的每一個手動寫下自己...
是的,這是比較特殊的是*大錯特錯*代碼的99.99%的時間。如果你有一個終結器,你應該只執行一次性模式。如果你認爲你需要一個終結者,那麼99.99%的時間你錯了。只需刪除垃圾直到只剩下Dispose()方法。一個說「不要更改此代碼」的人。更改它:)調用任何一次性成員的Dispose方法。 –
@Hans Passant,不,那不是我想要/意味着...我更新我的問題 –