2010-08-05 68 views
1

我有一個WCF請求枚舉數組,通過null,無論我嘗試過。 該服務除了枚舉問題以外。爲什麼我的WCF服務中的枚舉值爲null?

有沒有人有任何想法,爲什麼這可能是?

枚舉代碼:

[DataContract(Namespace = "http://services.myproject.com/requests/MyProject")] 
    public enum Recommendation 
    { 
     [EnumMember] 
     One = 1, 
     [EnumMember] 
     Two = 2,    
    } 

SOAP XML:

... xmlns:lat="http://services.myproject.com/requests/MyProject" ... 
... 
<lat:Recommendations> 
     <Recommendation>One</Recommendation> 
     <Recommendation>Two</Recommendation> 
</lat:Recommendations> 
... 

C#:

[DataContract(Namespace = "http://services.myproject.com/requests/MyProject")] 
public class MyRequest : Request ... 
{ 
    //... 
    [DataMember] 
    public Recommendation[] Recommendations { get; set; } 
    //... 
} 
+0

目前可疑的KnownType問題... – Ben 2010-08-05 14:41:54

回答

3

嘗試[KnownType(typeof(Recommendation[]))]屬性添加到您的MyRequest類

+0

謝謝剛試過,沒有效果,我可以看到。 Xml失敗! – Ben 2010-08-05 14:31:24

+0

解決方案實際上是添加[KnownType(typeof(Recommendation))]。感謝指針 – Ben 2010-08-05 14:56:48