我有一个类,ReportDef,它是一个具体的类,我根据需要使用[DataContract]和[DataMember]属性进行了装饰。 与我的,一起ReportDef组装。然后我有另一个类,,它派生自并在 assembly 。 没有服务关心的附加状态。 A1ServiceContractIReportServiceUiReportDefReportDefA2UiReportDef
我想用UiReportDef. 有没有办法(除了手动构造一个ReportDef实例UiReportDef)在我的服务不知道的情况下做到这一点A2?我知道KnownType。我不想参考A2。
编辑:这里有一些上下文可能会让我的问题更容易理解。我的ServiceContract工具IReportService定义了一个方法,RunReport(ReportDef report). ReportDef用DataContract属性装饰,并且有用 . 装饰的私有成员DataMember。 UiReportDef是在依赖于UI相关程序集等的程序集中。我没有设计现有的类层次结构。我需要将ReportDefsand UiReportDefs(as ReportDefs) 传递给新服务。由于ReportDef是具体的,我希望序列化程序UiReportDefs在ReportDefs没有任何其他信息的情况下处理。