Esempio n. 1
0
        private static Forretningskvitteringfelter HentForretningskvitteringFelter(IntegrasjonspunktKvittering integrasjonspunktKvittering)
        {
            var forretningskvittergFelter = new Forretningskvitteringfelter();

            XmlDocument document = new XmlDocument();

            document.LoadXml(integrasjonspunktKvittering.rawReceipt);

            try
            {
                var guidNode = GetXmlNodeFromDocument(document, "//ns3:BusinessScope/ns3:Scope/ns3:InstanceIdentifier");
                forretningskvittergFelter.KonversasjonsId = new Guid(guidNode.InnerText);

                forretningskvittergFelter.IntegrasjonsPunktId = integrasjonspunktKvittering.id;

                var tidspunktNode = GetXmlNodeFromDocument(document, "//ns9:tidspunkt");
                forretningskvittergFelter.Generert = Convert.ToDateTime(tidspunktNode.InnerText);

                var bodyReferenceNode = document.SelectSingleNode("//ns9:kvittering/ns5:Signature/ns5:SignedInfo/ns5:Reference", GetNamespaceManager(document));
                forretningskvittergFelter.BodyReferenceUri = bodyReferenceNode.Attributes["URI"].Value;
                forretningskvittergFelter.DigestValue      = bodyReferenceNode.SelectSingleNode("//ds:DigestValue", GetNamespaceManager(document)).InnerText;
            }
            catch (Exception e)
            {
                throw new XmlParseException($"Feil under bygging av {e.GetType()} (av type Forretningskvittering).", e);
            }

            return(forretningskvittergFelter);
        }
        private static Forretningskvitteringfelter HentForretningskvitteringFelter(XmlDocument forretningskvittering)
        {
            var forretningskvittergFelter = new Forretningskvitteringfelter();

            var bodyId = SjekkForretningskvitteringForKonsistens(forretningskvittering);

            try
            {
                var guidNode = GetXmlNodeFromDocument(forretningskvittering, "//ns3:BusinessScope/ns3:Scope/ns3:InstanceIdentifier");
                forretningskvittergFelter.KonversasjonsId = new Guid(guidNode.InnerText);

                var tidspunktNode = GetXmlNodeFromDocument(forretningskvittering, "//ns9:tidspunkt");
                forretningskvittergFelter.Generert = Convert.ToDateTime(tidspunktNode.InnerText);

                var bodyReferenceNode = forretningskvittering.SelectSingleNode("//ns5:Reference[@URI = '#" + bodyId + "']", GetNamespaceManager(forretningskvittering));
                forretningskvittergFelter.BodyReferenceUri = bodyReferenceNode.Attributes["URI"].Value;
                forretningskvittergFelter.DigestValue      = bodyReferenceNode.SelectSingleNode("//ds:DigestValue", GetNamespaceManager(forretningskvittering)).InnerText;
            }
            catch (Exception e)
            {
                throw new XmlParseException($"Feil under bygging av {e.GetType()} (av type Forretningskvittering).", e);
            }

            return(forretningskvittergFelter);
        }
        private static Forretningskvitteringfelter HentForretningskvitteringFelter(XmlDocument forretningskvittering)
        {
            var forretningskvittergFelter = new Forretningskvitteringfelter();

            var bodyId = SjekkForretningskvitteringForKonsistens(forretningskvittering);

            try
            {
                var guidNode = GetXmlNodeFromDocument(forretningskvittering, "//ns3:BusinessScope/ns3:Scope/ns3:InstanceIdentifier");
                forretningskvittergFelter.KonversasjonsId = new Guid(guidNode.InnerText);

                var tidspunktNode = GetXmlNodeFromDocument(forretningskvittering, "//ns9:tidspunkt");
                forretningskvittergFelter.Generert = Convert.ToDateTime(tidspunktNode.InnerText);

                var bodyReferenceNode = forretningskvittering.SelectSingleNode("//ns5:Reference[@URI = '#" + bodyId + "']", GetNamespaceManager(forretningskvittering));
                forretningskvittergFelter.BodyReferenceUri = bodyReferenceNode.Attributes["URI"].Value;
                forretningskvittergFelter.DigestValue = bodyReferenceNode.SelectSingleNode("//ds:DigestValue", GetNamespaceManager(forretningskvittering)).InnerText;
            }
            catch (Exception e)
            {
                throw new XmlParseException($"Feil under bygging av {e.GetType()} (av type Forretningskvittering).", e);
            }

            return forretningskvittergFelter;
        }