2012-02-08 140 views
0

我有一個枚舉,用於處理邏輯標誌,我想通過WCF服務將處理邏輯公開給Silverlight客戶端。在服務參考中包含枚舉

第一個問題是,如果我使用Option1 | Option2(位標誌)串行器有一個問題,因爲這兩個選項的總和不等於一個可枚舉選項(應該是)。我可以通過使用int作爲參數來解決這個問題。然而這會遇到我的第二個問題:我的枚舉不包含在服務引用中,因爲它不是任何類型的成員(DataContract)。

我可以克服我的第二個問題與鏈接的文件,但寧願不,或創建一個返回枚舉類型的虛擬方法,也不是很好。

是否有一個簡單的方法來對奇數進行去序列化操作,或將枚舉類型注入到服務引用中?還是更好的選擇呢?

+1

我剛剛發現了一個枚舉朋友叫[國旗]其中允許我使用枚舉作爲參數值和位標誌正確反序列化...不能回答我自己的問題呢... – 2012-02-08 10:18:02

回答

0

我剛剛發現了一個枚舉朋友叫[國旗],它允許我使用枚舉作爲參數值和位標誌被正確地反序列化...

0

爲此,您應該使用:

[DataContract(Name = "CarCondition")] 
public enum CarConditionEnum 
{ 
    [EnumMember] 
    New, 
    [EnumMember] 
    Used, 
    [EnumMember] 
    Rental, 
    Broken, 
    Stolen 
} 

您可以在這裏得到更多的細節:MSDN

+0

這並不完全回答我的問題,但讓我回答,謝謝任何案件 – 2012-02-08 10:19:30