2009-10-17 82 views
-2

我有一個excepction,而試圖在Visual Studio 2008序列化一個堆棧,C#3.5問題的XML序列化:必須實現默認訪問描述符

下面是一些示例代碼。

> 1  CardDN kk = new CardDN(12, CardDN.SuitType.Clubs); 
> 2  Stack<CardDN> kk1 = new Stack<CardDN>(); 
> 3  kk1.Push(kk); 
> 4  
> 5  XmlSerializer serializerk = new XmlSerializer(kk1.GetType()); 
> 6  StringWriter auxSerializedk = new StringWriter(); 
> 7  serializerk.Serialize(auxSerializedk, kk1); 

它未能在管線5的異常,這是一個:

德貝implementar EL描述符去 acceso predeterminado烯 System.Collections.Generic.Stack`1 [[BlackJack.CardDN, DN_BlackJack,Version = 1.0.0.0, Culture = neutral,PublicKeyToken = null]] porque hereda de ICollection。

在英語中是一樣的東西:

「必須在 System.Collections.Generic.Stack`1 [BlackJack.CardDN, DN_BlackJack,版本= 1.0.0.0實現 默認訪問描述符, 文化=中立,公鑰=空] 因爲自ICollection。

繼承我讀過,列出可能是XML序列化,但Dictionarys做不是。我猜Stacks不會。 如何「實現默認訪問描述符」?我在谷歌找不到任何東西。 (也許因爲我的翻譯異常是不一樣的)

我真的需要一個堆棧。不想使用列表。

有什麼想法? 謝謝

回答

1

如上所述:palehorse's answer,堆棧沒有實現所需的默認訪問器。爲了澄清,你應該檢查palehorse,因爲他也回答了我的問題。