コード例 #1
0
        //Constructor 2
        public FieldTemplate(XElement fieldTemplateXml)
        {
            //Input XML: <fieldTemplate Name="RecordType" Type="AlphaNum" StartPosition="13" Size="2" DecimalPlaces="0" />
            string    fieldName        = ParserUtilities.GetCompulsoryAttributeValue(fieldTemplateXml, Fields.Name);
            FieldType fieldType        = ParserUtilities.GetFieldType(fieldTemplateXml, Fields.Type);
            int       startPosition    = ParserUtilities.GetAttributeNumericValue(fieldTemplateXml, Fields.StartPosition);
            int       fieldSize        = ParserUtilities.GetAttributeNumericValue(fieldTemplateXml, Fields.Size);
            string    decimalPlacesStr = ParserUtilities.GetNullableAttributeValue(fieldTemplateXml, Fields.DecimalPlaces);

            int decimalPlaces = 0;

            if (!String.IsNullOrEmpty(decimalPlacesStr))
            {
                decimalPlaces = Int32.Parse(decimalPlacesStr);
            }

            this.PopulateAllProperties(fieldName, fieldType, startPosition, fieldSize, decimalPlaces);
        }
コード例 #2
0
        private void InitializeLineTemplateFromXml(XElement lineTemplaeXml)
        {
            //Input XML:
            //<lineTemplate Name="RNA_RecType01" Length="1190">
            //  <fields>
            //    <fieldTemplate Name="RecordType" Type="AlphaNum" StartPosition="13" Size="2" DecimalPlaces="0" />
            //    <fieldTemplate Name="SourceInd" Type="AlphaNum" StartPosition="15" Size="1" DecimalPlaces="0" />
            //  </fields>
            //</lineTemplate>

            int    lineSize     = ParserUtilities.GetAttributeNumericValue(lineTemplaeXml, Fields.Length);
            string templateName = ParserUtilities.GetCompulsoryAttributeValue(lineTemplaeXml, Fields.Name);

            this.PopulateInitialObjectProperties(lineSize, templateName);

            foreach (XElement fieldXml in lineTemplaeXml.Element(Fields.XmlFields).Elements(Fields.XmlFieldTemplate))
            {
                FieldTemplate fieldTemplate = new FieldTemplate(fieldXml);
                this.AddFieldTemplate(fieldTemplate);
            }
        }