Example #1
0
        private static void InitKeyColumns(XmlNode xnKeyColumns, PdmKeyModel Key)
        {
            XmlElement  xmlElement = (XmlElement)xnKeyColumns;
            XmlNodeList childNodes = xmlElement.ChildNodes;

            foreach (string current in from XmlNode xnP in childNodes
                     select((XmlElement)xnP).GetAttribute("Ref"))
            {
                Key.AddColumnObjCode(current);
            }
        }
Example #2
0
        private IList <PdmTableInfoModel> GetTables(List <string> tableNames)
        {
            List <PdmTableInfoModel> list = new List <PdmTableInfoModel>();

            foreach (var item in tableNames)
            {
                string tableName, tableDescription;
                List <DbTableColumnSchema> dbColumnList = DbSchemaBLL.GetDbTableColumnSchema(item, sqlconnection, out tableName, out tableDescription);
                if (dbColumnList == null)
                {
                    throw new Exception("table {0} 不存在,请确认表名及数据库名是否正确!".Formats(item));
                }
                PdmTableInfoModel tbmodel = new PdmTableInfoModel()
                {
                    Code = tableName, Comment = tableDescription, Name = tableDescription
                };
                dbColumnList.ForEach(p =>
                {
                    PdmColumnInfoModel pcim = new PdmColumnInfoModel(tbmodel);
                    pcim.Code     = p.columnName;
                    pcim.Comment  = p.Description;
                    pcim.DataType = GetDataType(p);
                    pcim.ColumnId = p.columnName;
                    if (p.isPrimarykey == 1)
                    {
                        var keymodel = new PdmKeyModel(tbmodel)
                        {
                            KeyId = p.columnName
                        };
                        keymodel.AddColumnObjCode(p.columnName);
                        tbmodel.Keys.Add(keymodel);
                        tbmodel.PrimaryKeyRefCode = p.columnName;
                    }
                    pcim.Identity  = p.isIdentity == 1;
                    pcim.Mandatory = p.isAllowNull == 1;
                    tbmodel.Columns.Add(pcim);
                });
                list.Add(tbmodel);
            }
            return(list);
        }