public void StoreObject(object key, object obj) { XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), m_type, null); node.InnerText = StringFromObject(obj); m_xmlsc.CurrentNode.AppendChild(node); }
public void StoreObject(object key, object obj) { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), obj.GetType(), oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); m_xmlsc.StoreObject(key, obj.ToString()); m_xmlsc.PopNode(); }
public void StoreObject(object key, object obj) { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), m_type, oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); DictionaryEntry de = (DictionaryEntry)obj; m_xmlsc.StoreObject("key", de.Key); m_xmlsc.StoreObject("Value", de.Value); m_xmlsc.PopNode(); }
public void StoreObject(object key, object obj) { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), obj.GetType(), oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); Delegate del = (Delegate)obj; m_xmlsc.StoreObject("Target", del.Target); m_xmlsc.StoreObject("Method", del.Method.Name); m_xmlsc.PopNode(); }
public void StoreObject(object key, object obj) // TODO: Array of primitives - more compact format. { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), m_type, oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); Array array = (Array)obj; int rank = array.Rank; int[] lengths = new int[rank]; for (int i = 0; i < rank; i++) { lengths[i] = array.GetLength(i); } m_xmlsc.StoreObject("ElementType", array.GetType()); if (rank > 1) { m_xmlsc.StoreObject("Lengths", lengths); } else { m_xmlsc.StoreObject("Length", lengths[0]); } int[] indices = new int[rank]; Array.Clear(indices, 0, rank); int ndx = 0; while (ndx < rank) { ndx = 0; string ndxStr = GetNdxString(indices); m_xmlsc.StoreObject(ndxStr, array.GetValue(indices)); while ((ndx < indices.Length) && (++indices[ndx]) == lengths[ndx]) { indices[ndx] = 0; ndx++; } } m_xmlsc.PopNode(); }
public void StoreObject(object key, object obj) { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), m_type, oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); ArrayList al = (ArrayList)obj; m_xmlsc.StoreObject("NumEntries", al.Count); int i = 0; foreach (object entry in al) { m_xmlsc.StoreObject("Val_" + i, entry); i++; } m_xmlsc.PopNode(); }
public void StoreObject(object key, object obj) { object oid = m_xmlsc.GetOidForObject(obj); XmlNode node = m_xmlsc.CreateEmptyNode(key.ToString(), m_type, oid); m_xmlsc.CurrentNode.AppendChild(node); m_xmlsc.PushNode(node); Hashtable ht = (Hashtable)obj; m_xmlsc.StoreObject("NumEntries", ht.Count); int i = 0; foreach (DictionaryEntry de in ht) { m_xmlsc.StoreObject("Key_" + i, de.Key); m_xmlsc.StoreObject("Val_" + i, de.Value); i++; } m_xmlsc.PopNode(); }