我想反序列化来自 Silverlight 客户端的 JSON 响应。
我的 DTO 在可移植类库中,从服务器和客户端都引用。
public class MyDTOResponse
{
public IEnumerable<MyType> ResponseData {get; set; }
}
当我使用ServiceStack C# 客户端(即不是来自Silverlight)时,一切正常:MyType 在客户端上得到补充。
来自 Silverlight,但是 ResponseData 为空。
Silverlight 中的简单类型也可以正常工作。例如,这有效:
public class MyDTOResponse
{
public IEnumerable<string> ResponseData {get; set; }
}
注意:DTO 上没有注释。
在客户端,我正在使用:
var serviceClient = new ServiceStack.ServiceClient.Web.JsonServiceClient(baseUri);
我的解决方法是更改 DTO,使它们只使用简单的类型,然后在客户端手动合并我的业务对象。
我能做得比这更好吗?