Example #1
0
        public static GridLayerImpl ParseXml(XDocument gridLayerXml)
        {
            var layer = new GridLayerImpl();

            if (gridLayerXml.Root == null)
            {
                return(layer);
            }
            var gridNames = NinXmlParser.GetChildElements(gridLayerXml.Root, "navn", TillatAntall.AkkuratEn);

            layer.Name = gridNames[0].Value;

            var gridDescriptions = NinXmlParser.GetChildElements(gridLayerXml.Root, "beskrivelse", TillatAntall.MaksimaltEn);

            if (gridDescriptions.Count == 1)
            {
                layer.Description = gridDescriptions[0].Value;
            }

            var gridCodes = NinXmlParser.GetChildElements(gridLayerXml.Root, "kode", TillatAntall.AkkuratEn);

            layer.Code = new Code(NinXmlParser.ParseCode(gridCodes[0]));

            var gridOwners = NinXmlParser.GetChildElements(gridLayerXml.Root, "eier", TillatAntall.AkkuratEn);

            layer.Owner = new Contact(NinXmlParser.ParseContact(gridOwners[0]));

            var gridEstablishDates = NinXmlParser.GetChildElements(gridLayerXml.Root, "etablertDato", TillatAntall.AkkuratEn);

            layer.Established = Convert.ToDateTime(gridEstablishDates[0].Value);

            var gridDocuments = NinXmlParser.GetChildElements(gridLayerXml.Root, "dokumenter", TillatAntall.NullEllerFlere);

            foreach (var gridDocument in gridDocuments)
            {
                layer.Documents.Add(new Document(NinXmlParser.ParseDocument(gridDocument)));
            }

            var localName = gridLayerXml.Root.Name.LocalName;

            switch (localName)
            {
            case "RuteNettKart":
                layer.RutenettkartFraXml(gridLayerXml);
                break;

            case "OmraadeKart":
                layer.OmrådekartFraXml(gridLayerXml);
                break;

            default:
                throw new GridParseException("The element " + localName +
                                             " contains a unknown value.");
            }
            return(layer);
        }
Example #2
0
        public static GridLayerImpl FromExcelFile(string excelFilePath, RutenettType rutenettType, string name, int columnNumber)
        {
            var gridLayer = new GridLayerImpl(name, rutenettType);

            var workBook = new XLWorkbook(excelFilePath);
            var sheet    = workBook.Worksheet(0);

            int endIndexRow = sheet.LastRow().RowNumber();

            for (int i = 2; i <= endIndexRow; ++i)
            {
                IXLRow row   = sheet.Row(i);
                object value = row.Cell(columnNumber).Value;

                var cellId = row.Cell(1).Value;
                gridLayer.Cells.Add(new GridLayerCell {
                    CellId = cellId.ToString(), Value = value.ToString()
                });
            }

            return(gridLayer);
        }