2010-03-31 109 views
4

對於低於版本4.0的C#鴨子打字的現狀是什麼?最新的C#鴨子打字庫

我知道Duck Typing Project,我知道BLTookit有這樣的結果,但我想知道如果我除了DLR語言和C#4.0之外還有一些真正的缺陷。

+1

我看不出你如何能做到這一點與庫。在4.0-C#中添加的新東西是靜態類型的之前。期。允許鴨子打字的添加比簡單的圖書館更加深入。 – 2010-03-31 14:38:34

+0

@比利查看我的編輯。這在C#4.0以前是完全可行的 – 2010-03-31 14:42:14

+0

我試圖讓我的「DeformedDuck」「Quack()」因爲此刻他只有「MakeNoise()」而我寫了一個Quack()擴展方法,但是我發現只有你提到的那個庫,它似乎不支持擴展方法。 – Myster 2010-06-11 03:13:42

回答

3

在c#代碼中使用鐵蟒。我們已經非常成功地使用了它。

2

您可以使用DLR作爲.NET 4之前的動態類型功能,但不能使用dynamic關鍵字,因此可能會很痛苦。其餘的「鴨子打字」功能看起來像可以通過類似Castle Dynamic Proxy的東西。