2010-08-05 1 views
1

У меня есть массив перечислений на запрос WCF, который проходит через null, независимо от того, что я пробовал. Услуга работает отдельно от проблемы с перечислениями.Почему мой массив значений перечисления null в моей службе WCF?

Есть ли у кого-нибудь идеи, почему это может быть?

код перечисления:

[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 issue ... – Ben

ответ

3

Попытка добавить [KnownType(typeof(Recommendation[]))] атрибут вашего MyRequest класса

+0

спасибо, просто попробовал, никакого эффекта, который я вижу. Xml не работает! – Ben

+0

Решение должно было фактически добавить [KnownType (typeof (Рекомендация))]. Спасибо за указатель – Ben