public static string GetDescription(NamedValueCollection nameValues)
        {
            if (nameValues == null || nameValues.Count == 0)
            {
                return string.Empty;
            }

            string s = nameValues[0].ToString();
            for (int i = 1; i < nameValues.Count; i++)
            {
                s += "," + nameValues[i].ToString();
            }

            return s;
        }
        public NamedValueCollection Clone()
        {
            NamedValueCollection nameValues = new NamedValueCollection();

            nameValues.Assign(this);

            return nameValues;
        }
        public void Assign(NamedValueCollection nameValues)
        {
            Clear();

            if (nameValues != null)
            {
                int count = nameValues.Count;
                for (int i = 0; i < count; i++)
                {
                    Add(nameValues[i].Clone());
                }
            }
        }