2011-07-18 41 views
0

我有一個ASP.NET 2.0 Web服務,並正在使用它(尤其是)Adobe Flex應用程序。我有一個奇怪的問題,如果我發送一個對象到web服務使用soap的一些字段爲null的web服務實際上是在另一端創建新的對象(並沒有在其中放入任何數據)。當通過soap提供空值時,.NET 2.0 Web服務創建新對象

的XML發送看起來是這樣的:

<tns:Item> 
      <tns:Id>-1</tns:Id> 
      <tns:SomeField>21114</tns:SomeField> 
      <tns:SomeFieldThatShouldBeNull xsi:nil="true"/> 
      <tns:SomeFieldThatShouldBeNull2 xsi:nil="true"/> 
</tns:Item> 

在這個例子中SomeFieldThatShouldBeNull和SomeFieldThatShouldBeNull2正在通過WebService的新對象創建。對於沒有發生的應用程序來說,這是至關重要的。什麼可能導致這個?

到目前爲止,Google,MSDN和ASP.NET論壇還沒有成功。

回答

2

通過隨機刺激修復。看起來我必須在.NET代碼中的字段上放置以下屬性,才能使用xsi:nil =「true」屬性將字段視爲空值:

[System.Xml.Serialization.XmlElementAttribute(IsNullable = true)] 
相關問題