Пример #1
0
        private void UploadFile(string fileName)
        {
            try
            {
                string stringfile = System.IO.Path.GetFileName(fileName);
                DocumentValidationWebServiceSoapClient srv = new DocumentValidationWebServiceSoapClient();
                FileInfo fileInfo      = new FileInfo(fileName);
                long     numberBytes   = fileInfo.Length;
                double   defaultLength = Convert.ToDouble(fileInfo.Length / 1000000);

                if (defaultLength < 4)
                {
                    FileStream   fileStream   = new FileStream(fileName, FileMode.Open, FileAccess.Read);
                    BinaryReader binaryReader = new BinaryReader(fileStream);
                    byte[]       data         = binaryReader.ReadBytes((int)numberBytes);
                    binaryReader.Close();
                    string stringTmp = srv.UploadDocument(data, stringfile);
                    fileStream.Close();
                    fileStream.Dispose();
                    DeclarationDocument declarationDocument = srv.ValidateDocument(stringTmp);
                    rtb_result.Text = $"Document structure {declarationDocument.DocumentStructure} {Environment.NewLine}";
                    rtb_result.AppendText($"Declaration Command {declarationDocument.DeclarationCommand} {Environment.NewLine}");
                    rtb_result.AppendText($"SiteId node {declarationDocument.SiteId}");
                }
                else
                {
                    MessageBox.Show("The file selected exceeds the size limit for uploads.", "File Size");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Upload Error");
            }
        }
        public DeclarationDocument ValidateDocument(string doc)
        {
            const string        nodePattern         = "InputDocument/DeclarationList/Declaration";
            DeclarationDocument declarationDocument = new DeclarationDocument();
            XmlDocument         xmlDocument         = new XmlDocument();

            try
            {
                xmlDocument.LoadXml(doc);

                foreach (XmlNode item in xmlDocument.SelectNodes(nodePattern))
                {
                    string commandAttribute = item.Attributes["Command"].Value;

                    if (commandAttribute == "DEFAULT")
                    {
                        declarationDocument.DeclarationCommand = ValidationStatus.InvalidDeclarationCommand.ToString("D");
                    }
                }

                foreach (XmlNode t in xmlDocument.GetElementsByTagName("SiteID"))
                {
                    string siteId = t.FirstChild.InnerText;

                    if (siteId == "DUB")
                    {
                        declarationDocument.SiteId = ValidationStatus.InvalidSiteId.ToString("D");
                    }
                }

                declarationDocument.DocumentStructure = ValidationStatus.ValidStructure.ToString("D");

                return(declarationDocument);
            }
            catch (Exception ex)
            {
                string message = ex.Message;
                declarationDocument.DocumentStructure  = "";
                declarationDocument.DeclarationCommand = "";
                declarationDocument.SiteId             = "";
                return(declarationDocument);
            }
        }