public Dictionary <string, valueItem> CopyNameValueObject() { NameValueObject dest = new NameValueObject(); foreach (string name in this.NameValuePairKeyList()) { valueItem value = new valueItem(); this.nameValuePairs.TryGetValue(name, out value); dest.AddNameValuePair(name, value.value, value.enumList); } return(dest.nameValuePairs); }