示例#1
0
        /// <summary>
        /// 把其他信息保存到 xml 中
        /// </summary>
        /// <param name="xmlFileName"></param>
        /// <param name="tableName"></param>
        /// <param name="list"></param>
        private void Save(string xmlFileName, string tableName, List <VM_ColumnMetadata> list)
        {
            // 需要先读取之前的xml配置
            string path = GetImportConfigXmlPath(xmlFileName);

            if (File.Exists(path))
            {
                // 需要保留之前的配置信息
                var tableConfigList = GetTableConfig(path);
                // 查找里面的table配置节点
                var table = tableConfigList.FirstOrDefault(a => string.Compare(a.TableName, tableName, true) == 0);
                if (table == null)
                {
                    table = GetTableMetadata(tableName, list);
                    tableConfigList.Add(table);
                }
                table.Columns = AddCheckInfo(list);
                var el = new XElement("tables", tableConfigList.Select(a => a.ToXml()));
                el.Save(path);
            }
            else
            {
                VM_TableMetadata table = GetTableMetadata(tableName, list);
                var el = new XElement("tables", table.ToXml());
                el.Save(path);
            }
        }
示例#2
0
        /// <summary>
        /// 得到 TableMetadata 元数据
        /// </summary>
        /// <param name="tableName"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        private VM_TableMetadata GetTableMetadata(string tableName, List <VM_ColumnMetadata> list)
        {
            AddCheckInfo(list);
            var table = new VM_TableMetadata();

            table.TableName = tableName;
            table.Columns   = list;
            return(table);
        }