源代碼錯誤服務的錯誤消息。需要從引用類型中排除此類型。WCF與共享類
現在我試圖取消選中重用引用類型,我可以讓我的項目編譯。但是當從客戶端發送一個集合時,它從來沒有收到或者無法在服務器端反序列化。
我真的需要這個工作。任何幫助將不勝感激,全部源代碼由谷歌代碼提供。
源代碼錯誤服務的錯誤消息。需要從引用類型中排除此類型。WCF與共享類
現在我試圖取消選中重用引用類型,我可以讓我的項目編譯。但是當從客戶端發送一個集合時,它從來沒有收到或者無法在服務器端反序列化。
我真的需要這個工作。任何幫助將不勝感激,全部源代碼由谷歌代碼提供。
我沒有下載源代碼並構建它,但是這可能是因爲你在這個類中缺少DataContract? Sui類具有Sua類型的屬性作爲DataMember,所以它也需要序列化。它看起來像你目前的代碼
[ProtoContract, ]
[KnownType(typeof(ObservableCollection<LocaleString>))]
public class Sua
丟失datacontract是一個簡單的錯誤,當我做了一個搜索/替換來刪除XML屬性,它在那裏。我修復了它並更新了服務,錯誤仍然相同。 – 2010-03-24 12:46:27
我需要做什麼來重現此錯誤?第一點(關於匹配數據合同)聽起來像WCF對你不是很滿意,這表明你有兩個相似的(但不同的)合同「在場」。如果你正在重新使用共享庫中的類型,這應該不成問題。
如果做結束了不含類型(以及具有客戶端和服務器不同的型號),然後它可以得到一個位 tricker,因爲「MEX」不保證該職位將保持不變(和indde,他們經常改變) - 但你可以通過使用幾個[ProtoPartialMember(...)]
對類型(不漂亮,但它的工作原理)來解決這個問題。
但我強調 - 這裏的主要問題似乎是WCF;如果那不高興,這樣的代碼不codegen /編譯等,那麼我的手是相當捆綁(因爲它不會像protobuf網談話)。
唯一的辦法是下載源代碼,編譯基礎和管理項目,運行管理exe文件,我把它放在一個循環中,以便在測試時更新服務更容易(它不會做任何事情,除非在你的循環中運行機)。然後更新SevenUpdate的服務,您將看到警告消息。 [code] void AddApp(Sua app); void SetUpdates(Collection
它工作正常,我試圖發送類到服務和服務返回結果。 (雙面合同),可能是我錯誤地實施了它。在此之前,我只是序列化一個臨時文件,並讓服務反序列化它,這是我想通過使用已有的WCF服務避免的。 – 2010-03-24 12:53:55
任何人都可以幫我解決這個問題嗎?我假設它必須處理被丟棄的protobuf屬性。我一直試圖找出這個錯誤數週。 – 2010-04-04 22:07:33