2013-01-06 53 views
-2

最近,我問了一個問題關於調用C#泛型類型的方法:calling method in template in C#調用多個Web服務方法中的一種常用方法,並使用泛型方法

我的問題是,我無法操縱我要創建的類型通用函數。這些類型是一些具有相同方法的Web服務的SoapClient。有沒有解決方案可以讓我避免複製代碼?

+0

我真的不明白你在說什麼。此外,您的帖子中似乎沒有任何實際問題。 – svick

+0

...現在怎麼樣? – d33tah

回答

1

如果我正確理解你,你有幾種你不能改變的類型,它們不共享任何接口,但有一些共同的方法。而且你想編寫一個方法來爲任何類型調用這個通用方法。

要做到這一點,我認爲你有兩個選擇:

  1. 創建爲每個類的包裝,那確實實現一個共同的接口。然後你可以在你的方法中使用該接口,並將它作爲參數提供給包裝器。
  2. 使用dynamic來調用該方法。使用dynamic,您不必實現任何接口,但這也意味着您正在丟失所有編譯時類型檢查(和自動完成)。