我正在做一个项目,我必须使用 WCF 从客户端设备向服务器发送数据。该项目有一个已经开发的模型。模型中的所有类都是 SObject 的子类。
在同步项目中,我正在执行以下操作。
[ServiceContract]
public interface IMobileService
{
[OperationContract]
SynchronizeResponse Synchronize(SynchronizeRequest request);
[OperationContract]
SynchronizeResponse Checkout(CheckoutRequest request);
}
和
[DataContract]
public class SynchronizeResponse
{
[DataMember]
public bool FullSync { get; set; }
[DataMember]
public IEnumerable<Student> Students { get; set; }
[DataMember]
public IEnumerable<Teacher> Teachers { get; set; }
[DataMember]
public IEnumerable<SObject> SObject { get; set; }}
和类 SynchronizeRequest 的相同类型的代码
它以这种方式工作。但是我怎样才能只发送包含所有子对象的 SObject?我在 SyncRequest 属性中尝试过 [KnownType(typeof(Student))]。但它抛出异常。
没有编辑模型,完成任务的最佳方法是什么。