Hi Stephen,

Your code works fine for me in the default Mono/Droid project.
CallHistoryModel has two items in it. Attaching my code for reference.

-Max

On Sat, Sep 8, 2012 at 1:09 PM, Stephan Steiner
<[email protected]>wrote:

> Hi
>
> Here's a bit of code working perfectly on a PC, but when running it on M4A,
> the deserialized object contains 0 items, not 2.
>
>             CallHistoryModel.Instance.AddItem(new CallHistoryItem { Number
> =
> "1234", Type = CallHistoryItemType.OutgoingAnswered });
>             CallHistoryModel.Instance.AddItem(new CallHistoryItem { Number
> =
> "2345", Type = CallHistoryItemType.OutgoingAnswered });
>
>             XmlSerializer x = new
> XmlSerializer(CallHistoryModel.Instance.GetType());
>             StringWriter o = new
> StringWriter(System.Globalization.CultureInfo.InvariantCulture);
>             x.Serialize(o, CallHistoryModel.Instance);
>             string serializedData = o.GetStringBuilder().ToString();
>
>             x = new XmlSerializer(CallHistoryModel.Instance.GetType());
>             StringReader sr = new StringReader(serializedData);
>             CallHistoryModel ch = (CallHistoryModel)x.Deserialize(sr);
> if (ch.History.Count == 0)
> Console.WriteLine("FAIL");
>
> And the objects I'm serializing
>
>     [Serializable]
>     public class CallHistoryModel
>     {
>         private static CallHistoryModel me;
>         private static object myLock = new object();
>
>         public static CallHistoryModel Instance
>         {
>             get
>             {
>                 if (me == null)
>                 {
>                     lock (myLock)
>                     {
>                         if (me == null)
>                             me = new CallHistoryModel();
>                     }
>                 }
>                 return me;
>             }
>         }
>
>         private List<CallHistoryItem> history;
>         public List<CallHistoryItem> History
>         {
>             get { return history; }
>             set { history = value; }
>         }
>
>         public ObservableCollection<CallHistoryItem> Items
>         {
>             get
>             {
>                 lock (myLock)
>                 {
>                     return new
> ObservableCollection<CallHistoryItem>(history);
>                 }
>             }
>         }
>
>         public void AddItem(CallHistoryItem item)
>         {
>             if (history.Count >= 100)
>                 history.RemoveRange(100, history.Count - 100);
>             history.Add(item);
>         }
>
>         public void RemoveItem(CallHistoryItem item)
>         {
>             history.Remove(item);
>         }
>
>         public CallHistoryModel()
>         {
>             history = new List<CallHistoryItem>();
>         }
>
>
>     }
>
>     [Serializable]
>     public class CallHistoryItem
>     {
>         public string Number { get; set; }
>         public string Name { get; set; }
>         public DateTime Date { get; set; }
>         public CallHistoryItemType Type { get; set; }
>         public byte Count { get; set; }
>
>         public CallHistoryItem(string number)
>         {
>             Number = number;
>             Date = DateTime.Now;
>         }
>
>         public CallHistoryItem()
>         {
>         }
>     }
>
>
>     public enum CallHistoryItemType { OutgoingUnanswered, OutgoingAnswered,
> IncomingUnanswered, IncomingAnswered }
>
>
> Is there a trick to get this to work or do I have to resort to manual xml
> parsing?
>
> Regards
> Stephan
>
>
>
> --
> View this message in context:
> http://mono-for-android.1047100.n5.nabble.com/Deserialization-issue-List-MyType-not-being-filled-tp5711738.html
> Sent from the Mono for Android mailing list archive at Nabble.com.
> _______________________________________________
> Monodroid mailing list
> [email protected]
>
> UNSUBSCRIBE INFORMATION:
> http://lists.ximian.com/mailman/listinfo/monodroid
>



-- 
Hahahahaaaa!!! That is ME laughing at YOU, cruel world.
    -Jordan Rixon

I could not love thee, dear, so much,
Loved I not Honour more.

Attachment: Activity1.cs
Description: Binary data

_______________________________________________
Monodroid mailing list
[email protected]

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid

Reply via email to