簡體   English   中英

WCF和ObservableCollection <T> -物品在那里,但是空嗎?

[英]WCF and ObservableCollection<T> - Items are there, but empty?

我在WCF服務上有一個返回ObservableCollection<T> 在服務器端,在返回結果之前,我可以看到該集合中填充了項目,並且這些項目包含了預期的數據。 在客戶端,用與服務器端相同數量的項目填充集合,但是每個項目中的所有屬性均為空(有四個字符串和一個枚舉類型)。

返回的項目的類型聲明不使用[DataContract][DataMember]屬性修飾,因為它駐留在共享的.dll中,並且對於該程序集中的任何其他類型,到目前為止,這都不是問題。 這種特殊類型用[Serializable]屬性修飾。在Fiddler中捕獲響應表明,在反序列化之前,項目仍然包含數據。 為什么在反序列化中會丟失項目屬性的值?

dll中的類型定義應標記為可序列化。

[Serializable()]        
public class TestSimpleObject  {...

只是為了踢一下,我用[DataContract][DataMember]屬性裝飾了它,所以就成功了。 似乎該枚舉沒有正確地序列化/反序列化。 希望我對此有個更好的主意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM