Ejemplo n.º 1
0
 /// <summary>
 /// 建立新增的「組態記錄」。
 /// </summary>
 public ConfigurationRecord(string name)
 {
     BaseData     = new AutoDictionary();
     PreviousData = null; //新格式的話,保持此資料是 Null。
     Namespace    = name;
     EditAction   = 1;    //新增
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 建立可更新的「組態記錄」。
        /// </summary>
        /// <param name="data">組態的  Xml 資料。</param>
        public ConfigurationRecord(string name, XmlElement data)
        {
            if (data == null)
            {
                throw new ArgumentException("組態的 Xml 資料不可以是 Null。");
            }

            Namespace  = name;
            EditAction = 2;    //修改
            BaseData   = null; //舊的格式的話,保持此資料是 Null。

            if (data.LocalName != RootName)
            {
                PreviousData = data.CloneNode(true) as XmlElement;
            }
            else
            {
                BaseData = new AutoDictionary(data.SelectNodes(RecordName), "Name", false);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 比較兩個 AutoDictionary 是否相同。
        /// </summary>
        /// <param name="obj">要比較的 AutoDictionary。</param>
        /// <returns></returns>
        public bool Equals(AutoDictionary obj)
        {
            if (BaseDictionary.Count != obj.BaseDictionary.Count)
            {
                return(false);
            }

            foreach (string each in BaseDictionary.Keys)
            {
                if (obj.BaseDictionary.ContainsKey(each))
                {
                    if (obj.BaseDictionary[each] != BaseDictionary[each])
                    {
                        return(false);
                    }
                }
                else
                {
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 4
0
 private AutoDictionary(AutoDictionary autoDic)
 {
     BaseDictionary = new Dictionary <string, string>(autoDic.BaseDictionary);
 }