की एक सरणी देता है मेरे पास उप वर्गों के साथ एक कस्टम सार आधार श्रेणी है जिसे मैंने ISERializable के साथ serializable/deseriablizeable बनाया है। जब मैं इस वर्ग के उप-वर्गों के एकल उदाहरणों के क्रमिकरण/deserialization करते हैं, तो सब कुछ ठीक काम करता है। हालांकि, जब मैं उनमें से एक सरणी करता हूं तो मैं हमेशा deserialization पर nulls की एक सरणी के साथ खत्म होता है। सीरियलाइजेशन बाइनरीफॉर्मेटर के साथ किया जाता है।किसी सरणी का Deserialization हमेशा nulls
आइटम एक में शामिल हैं:
public ObservableCollection<Trade> Trades { get; private set; }
क्रमबद्धता पर इस SerializationInfo पैरामीटर पर GetObjectData में किया जाता है:
Trade[] trades = (Trade[])Trades.ToArray<Trade>();
info.AddValue("trades", trades);
और अक्रमांकन इस पर पर भी क्रमबद्धता निर्माता में किया जाता है SerializationInfo पैरामीटर:
Trade[] trades = (Trade[])info.GetValue("trades", typeof(Trade[]));
foreach (Trade t in trades)
{
Trades.Add(t);
}
देस erialization हमेशा मुझे nulls की एक सरणी देता है और जैसा कि मैंने पहले उल्लेख किया है, एक आइटम serializes और इस कोड के साथ ठीक deseriaizes:
क्रमबद्धता (GetObjectData विधि):
info.AddValue("trade", Trades.First<Trade>());
Deserialization (क्रमबद्धता निर्माता):
Trade t = (Trade)info.GetValue("trade", typeof(Trade));
Trades.Add(t);
क्या यह एक आम समस्या है? मुझे कम से कम किसी और के लिए दौड़ने की कोई घटना नहीं मिलती है। उम्मीद है कि एक समाधान है :) और अगर मुझे आपको अधिक जानकारी/कोड प्रदान करने की ज़रूरत है तो बस मुझे बताएं।
धन्यवाद!
हाय, जानकारी चर क्या है? क्रमबद्धता का प्रारूप क्या है? एक्सएमएल या बाइनरी? –
यह SerializationInfo है जिसे मैं GetObjectData और Serialization-constructor में उपयोग करता हूं, क्षमा करें, उसमें उल्लेख किया जाना चाहिए था। – vesz
http://stackoverflow.com/questions/126155/c-array-xml-serialization कोई मदद? – Polity