我有一個Derived
類型的對象,但想要有一個Base
類型的對象。通常,我可以簡單地將對象投射到Base
的引用。但是,對於我的WCF服務,我真的只想公開Base
類。從C#派生類對象創建新的基類對象#
有一種巧妙的方法(從Derived
對象或創建一個新的Base
)獲得Base
到Derived
對象,其動態類型爲Base
?
例子:
myWcfResult.PropertyOfTypeBase = objectOfTypeDerived; // do some magic in this line
Assert.Trace(myWcfResult.PropertyOfTypeBase.GetType() == typeof(Base)); // should hold afterwards
// or at least WCF should be able to serialize it correctly into an XML element of type Base
你可以添加一個小代碼示例,說明情況?如果你不想讓用戶有機會將'Base'轉換爲'Derived',那麼我認爲用Derived'屬性創建一個新的'Base'是個很好的解決方案。 –
你可以添加一個例子嗎?我真的不明白。 – Grzenio
我已經添加了一個例子。 –