zoukankan      html  css  js  c++  java
  • xml解析

     private SubmitResult GetXmlGwSendResult(string result)
            {
                if (result.IsNullOrWhiteSpace())
                {
                    return null;
                }

                XElement el;
                try
                {
                    el = XElement.Parse(result);
                }
                catch (Exception ex)
                {
                    Logger.Error("解析XML出错", ex);
                    return null;
                }

                var root = el.XPathSelectElement("/");
                if (root == null) return null;
                var isError = root.XPathSelectElement("errorstatus") != null;
                if (isError) return CreateError(root);
                return CreateSucc(root);
            }

            private SubmitResult CreateError(XElement root)
            {
                var rlt = new SubmitResult
                {
                    Status = false,
                    Message = root.XPathSelectElement("remark")?.Value,
                    ErrorCode = root.XPathSelectElement("error")?.Value
                };
                return rlt;
            }

            private SubmitResult CreateSucc(XElement root)
            {
                var status = root.XPathSelectElement("returnstatus")?.Value;
                var message = root.XPathSelectElement("message")?.Value;
                var balance = root.XPathSelectElement("remainpoint")?.Value;
                var taskid = root.XPathSelectElement("taskID")?.Value;
                var successCount = root.XPathSelectElement("successCounts")?.Value;

                var rlt = new SubmitResult
                {
                    Status = status != null && status.Equals("success", StringComparison.OrdinalIgnoreCase),
                    Message = message,
                    Balance = balance.IsNullOrEmpty() ? 0 : Convert.ToInt32(balance),
                    TaskId = taskid,
                    SuccessCount = successCount.IsNullOrEmpty() ? 0 : Convert.ToInt32(successCount)
                };
                return rlt;
            }

  • 相关阅读:
    [Qt] 文本文件读写, 摘自官方文档
    [Windows] Socket Server Failed to bind, error 10048
    lodctr /R 失败的情况
    ModuleNotFoundError: No module named 'sklearn.cross_validation'
    [Qt] 通过socket将另一个程序的某个窗口调到最前端
    SortedDictionary<TKey, TValue> 类 表示根据键进行排序的键/值对的集合。
    finally不管有没有错都会运行 finally 块用于清除 try 块中分配的任何资源,以及运行任何即使在发生异常时也必须执行的代码
    HttpWebRequest使用证书请求
    string StartsWith 方法 Https
    设置https验证方式
  • 原文地址:https://www.cnblogs.com/rengke2002/p/9440912.html
Copyright © 2011-2022 走看看