是否可以通过JSON WCF服务发送/接收可空对象,发送时的外观如何?那么发送/接收枚举呢?
例如,我们在下面有一个通过JSON webservice发送给用户ui的对象
public enum GenderTypes
{
Male = 0,
Female = 1
}
public class Human {
public int? Age { get; set; }
public GenderTypes Gender {get; set;}
}
答案 0 :(得分:1)
是的,可以通过JSON WCF服务发送/接收可空对象。
如果您的对象具有可空类型属性,并且您希望调用该服务的客户端将其值发送为null,则您只能在请求主体中传递该属性的值,然后反序列化您的对象。
现在,您的对象将该属性的值设为null。
例如:您的请求正文看起来像这样(内容类型为json)
{
"Age" : 12,
"Gender":"M"
}
将此请求反序列化到对象中时,您的对象将具有
obj.Age=12
和obj.Gender="M"
,现在,如果您要求的话与此类似
{
"Gender":"M"
}
然后您的对象将有obj.Age=null
和obj.Gender="M"
。
(注意:我在这里假设Gender为String数据类型)