예제 #1
0
        private IEnumerable <CmsClassField>?GetFieldsFromXml()
        {
            var fields = ClassFormDefinitionXml?
                         .Descendants("field")
                         .Select(
                field =>
            {
                var isIdColumnRaw = field
                                    .Attribute("isPK")
                            ?
                                    .Value;

                var isIdColumn = !string.IsNullOrWhiteSpace(isIdColumnRaw) && bool.Parse(isIdColumnRaw);

                return(new CmsClassField
                {
                    Caption = field
                              .Descendants("fieldcaption")
                              .FirstOrDefault()
                                ?
                              .Value,
                    Column = field
                             .Attribute("column")
                             .Value,
                    ColumnType = field
                                 .Attribute("columntype")
                                 .Value,
                    DefaultValue = field
                                   .Descendants("defaultvalue")
                                   .FirstOrDefault()
                                ?
                                   .Value,
                    IsIdColumn = isIdColumn
                });
            }
                )
                         .ToList();

            return(fields);
        }
예제 #2
0
        private List <CmsClassField> GetFieldsFromXml()
        {
            var fields    = new List <CmsClassField>();
            var fieldsXml = ClassFormDefinitionXml.SelectNodes("/form/field");

            foreach (XmlNode field in fieldsXml)
            {
                var isIdColumnRaw = field.Attributes["isPK"]?.Value;
                var isIdColumn    = !string.IsNullOrWhiteSpace(isIdColumnRaw) ? bool.Parse(isIdColumnRaw) : false;

                fields.Add(new CmsClassField
                {
                    Caption      = field.SelectSingleNode("properties/fieldcaption")?.InnerText,
                    Column       = field.Attributes["column"].Value,
                    ColumnType   = field.Attributes["columntype"].Value,
                    DefaultValue = field.SelectSingleNode("properties/defaultvalue")?.InnerText,
                    IsIdColumn   = isIdColumn
                });
            }

            return(fields);
        }