2010-01-22 23 views
10

我返回的XML輸出到瀏覽器與WCF web服務,如果DataContract的屬性爲響應刪除空DataMember屬性,但它仍然在響應,如何從WCF

<Id i:nil="true" /> 
來通過

有沒有辦法讓它在響應中根本不返回?

回答

20

想通了我自己,我需要以下atrribute添加到我的數據成員

[DataMember(EmitDefaultValue = false)] 
+2

這似乎不適用於我......我應該添加的其他東西? – 2013-05-16 20:24:11

+3

是否沒有辦法將其指定爲默認行爲?這對微軟來說似乎是一個可怕的疏忽。例如,註釋包含超過100多個POCO的類庫的每個屬性都是不可接受的。 – crush 2014-05-06 17:01:55

+1

@Crush:我同意。任何人都有一個全球解決方案,而不是財產? – 2015-05-05 14:57:20

0

在其中的屬性存在有一個構造函數的類。在構造函數中將它初始化爲null。如果DataContract的屬性爲null,那麼它將不會出現在xml輸出中。 如果您希望數據出現在輸出中,那麼只需在您的類中實例化它,然後再暴露數據。