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;
            }

  • 相关阅读:
    史记 · 码农列传
    死侍在新片中,扮演了一个 AI 驱动的 NPC
    什么是高中物理?一篇长长长长文告诉你!
    你管这玩意叫网络?
    你管这破玩意叫计算机?
    try-catch-finally中的4个巨坑,老程序员也搞不定!
    未来几年,软件测试九大新兴趋势
    代码中大量的if/else,你有什么优化方案?
    PHP部署服务端常见问题整理
    PHP服务端环境搭建
  • 原文地址:https://www.cnblogs.com/rengke2002/p/9440912.html
Copyright © 2011-2022 走看看