【发布时间】:2014-01-29 11:16:49
【问题描述】:
我有一个Derived 类型的对象,但我想要一个Base 类型的对象。通常,我可以简单地将对象转换为Base 的引用。但是,对于我的 WCF 服务,我真的只想公开 Base 类。
有没有一种巧妙的方法可以将Base 获取到Derived 对象(或从Derived 对象创建一个新的Base),其中动态类型为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是一个很好的解决方案。 -
你能添加一个例子吗?我真的不明白。
-
我添加了一个例子。
标签: c# wcf types type-conversion