2013-12-20 65 views
0

是否可以通過JSON WCF服務發送/接收可空對象,它在發送時看起來如何?那麼發送/接收枚舉呢?發送/接收可空對象JSON web服務

例如,我們有下面的目的是通過JSON web服務發送給用戶的UI

public enum GenderTypes 
    { 
     Male = 0, 
     Female = 1 
    } 
    public class Human { 
     public int? Age { get; set; } 
     public GenderTypes Gender {get; set;} 
    } 

回答

1

是的,它能夠在一個JSON WCF服務發送/接收可爲空對象。

如果您的對象具有可爲空的類型屬性,並且您希望那個正在調用該服務的客戶端將其值作爲null發送,那麼您可以簡單地不在請求正文中傳遞該屬性的值,然後反序列化您的對象。

現在,您的對象將具有該屬性的值爲null。

例如:您的請求主體應該是這樣的(內容類型JSON)

{ 
    "Age" : 12, 
    "Gender":"M" 
} 

當您反序列化這個請求轉換成你的對象,你的對象將有 obj.Age=12obj.Gender="M",現在如果你的要求是相似像這樣

{ 
    "Gender":"M" 
} 

那麼你的對象將有obj.Age=nullobj.Gender="M"

(注:我在這裏假設性別爲字符串數據類型)

+0

好的,謝謝,以及枚舉呢? (如在更新的例子中) – RubenHerman

+0

枚舉,你可以傳遞枚舉的值,如(在這種情況下爲0,1) – Sachin