/// <summary> /// Delete value from dictionary by key. /// </summary> /// <param name="DictID">Supplies the id of the Dictionary to access. /// </param> /// <param name="Key">Key to search for and delete from the dictionary. /// </param> private void DictionaryDeleteKey(string DictID, string Key) { SortedDictionary <string, string> Dict; if (StorageList.TryGetValue(DictID, out Dict) == false) { return; } Dict.Remove(Key); StorageIteratorList.Remove(Key); }
/// <summary> /// Set Dictionary DictID's Key to a String Value. /// </summary> /// <param name="DictID">Supplies the id of the Dictionary to access. /// If this Dictionary does not exist, create it. </param> /// <param name="Key">Supplies the Key for lookup of the target dictionary. /// If no such Key exists, create a new Key/Value pair. </param> /// <param name="Value">Supplies the Value to associate to the Key in the /// target dictionary. </param> private void DictionarySetString(string DictID, string Key, string Value) { SortedDictionary <string, string> Dict; // Create if does not exist if (StorageList.TryGetValue(DictID, out Dict) == false) { Dict = new SortedDictionary <string, string>(); StorageList[DictID] = Dict; } Dict[Key] = Value; StorageIteratorList.Remove(DictID); }
/// <summary> /// Advance Dictionary Iterator to next Key-Value pair and return its Key. /// </summary> /// <param name="DictID">Supplies the id of the Dictionary to access. /// </param> /// <param name="Key">Output is the first Key in the SortedDictionary. /// </param> /// <returns>True if Dictionary DictID exists (and its iterator has been /// properly initialized with DictionaryIterateFirst) and the next /// Key-Value pair exists, otherwise false.</returns> private bool DictionaryIterateNext(string DictID, out string Key) { IDictionaryEnumerator ide; Key = ""; if (StorageIteratorList.TryGetValue(DictID, out ide) == false) { return(false); } // If another element does not exist, return false if (ide.MoveNext() == false) { StorageIteratorList.Remove(DictID); return(false); } Key = (string)ide.Key; return(true); }
/// <summary> /// Delete entire contents of dictionary by dictionary id. /// </summary> /// <param name="DictID">Supplies the id of the Dictionary to access. /// </param> private void DictionaryClear(string DictID) { StorageList.Remove(DictID); StorageIteratorList.Remove(DictID); }