首頁 >後端開發 >C++ >如何在 C# 中序列化帶有字典成員的類別?

如何在 C# 中序列化帶有字典成員的類別?

Barbara Streisand
Barbara Streisand原創
2025-01-15 18:41:45179瀏覽

How to Serialize a Class with a Dictionary Member in C#?

包含字典成員的C#類序列化

在嘗試序列化包含字典成員的類別時,可能會出現類似「無法序列化成員App.Configfile.mappedDrives」的錯誤訊息。儘管字典可以被序列化,但這個問題仍然可能出現。

為了解決這個問題,您可以考慮使用Paul Welter的Weblog提供的XML可序列化泛型字典解決方案。 .NET 2.0中的泛型字典不是XML可序列化的。 Welter的程式碼片段提供了一個解決方案,實作了IXmlSerializable介面以使字典可序列化。

以下是提供的代碼:

<code class="language-csharp">[XmlRoot("dictionary")]
public class SerializableDictionary<TKey, TValue> : Dictionary<TKey, TValue>, IXmlSerializable
{
    // ...
}</code>

透過實作ReadXml和WriteXml方法,這個自訂字典類別可以序列化和反序列化鍵值對。這個自訂字典可以用來取代ConfigFile類別中的標準字典,從而解決序列化問題。

以上是如何在 C# 中序列化帶有字典成員的類別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn