2011-10-06 80 views
1

我添加了一個服務引用,其產生的所有我datacontract對象我的WCF web服務。我正在使用BasicHttpBinding。使用部分類,我使這些對象中的一個繼承了另一個向其添加一些屬性的類。現在,它使該服務的調用時拋出一個錯誤:添加屬性來WCF DataContract

試驗方法CP.Exg2010.Tests.UnitTest1.TestWCF拋出異常: System.ServiceModel.Dispatcher.NetDispatcherFaultException:本 格式化拋出一個異常,而試圖反序列化消息: 嘗試反序列化參數 http://tempuri.org/:RunResult時出錯。設置InnerException消息是從命名空間 元‘‘CommandResult’「在第1行位置283.錯誤 ’‘URI://mycomp.corp/line/exg2010’不期望。期待元素 「_EngineTracingData'。有關更多詳細信息,請參閱InnerException。 ---> System.Runtime.Serialization.SerializationException:錯誤 第1個位置283 '元素' '' 從命名空間 'URI CommandResult://mycomp.corp/line/exg2010預計不會'。期待元素 '_EngineTracingData'。

CommandResult是屬於WSDL的屬性。 _EngineTracingData是基類中屬性使用的私有字段。

<XmlIgnore()> <SoapIgnore()> <Newtonsoft.Json.JsonIgnore()> _ 
Private _EngineTracingData As String = String.Empty 
<XmlIgnore()> <SoapIgnore()> <Newtonsoft.Json.JsonIgnore()> 
Public Property EngineTracingData As String Implements Interfaces.ICPMasterBaseInfo.EngineTracingData 
    Get 
     Return Me._EngineTracingData 
    End Get 
    Set(ByVal value As String) 
     Me._EngineTracingData = value 
    End Set 
End Property 

我看了一些關於反序列化的字母順序發生的事情,這可以解釋爲什麼_EngineTracingData是第一。但是,該字段/屬性甚至不應該用於反序列化!

任何幫助,將不勝感激!

回答

0

啊,我找到了!

添加

<非序列化()>

私人領域在基類固定我的問題!