将对象的实例克隆到其基类型

时间:2012-01-25 10:31:10

标签: c# reflection clone object-object-mapping

我有以下课程:

public class AddCouponInfoRequest : namespace.Request 
{

}

我手中有一个AddCouponInfoRequest实例,我希望得到一个具有相同值的namespace.Request实例。

这不能正常工作:

namespace.Request req = (namespace.Request)request;
string xml = req.SerializeToXml();

序列化后xml的值为:

< AddCouponInfoRequest xmlns:xsd = \" http://www.w3.org/2001/XMLSchema \" xmlns:xsi = \" http://www.w3.org/2001/XMLSchema-instance \"> \ r \ n \ r \ n \ n \ r \ n ...

我需要一个纯namespace.Request对象。这样做的最佳方式是什么?

提前致谢,

1 个答案:

答案 0 :(得分:1)

SerializeToXml是一个虚方法,所以它始终调用overriden方法是合乎逻辑的。

例如,您可以为AddCouponInfoRequest

创建一个新方法
string SerializeToXmlAsParent()
{
    return base.SerializeToXml();
}