Link to home
Start Free TrialLog in
Avatar of ITsolutionWizard
ITsolutionWizardFlag for United States of America

asked on

convert xml to json format

Below codes response to xml format when jquery is called.
1. How can I code response to Json format?
2. More importantly, how to consume it?

#region GetNetPrice
        [OperationContract]
        [WebGet(ResponseFormat = WebMessageFormat.Xml, UriTemplate = "ProQuoteService/GetNetPrice({CompanyID},{CustomerNo},{Model},{Qty},{OrderDate},{RepNo})")]
        String GetNetPrice(string CompanyID, string CustomerNo, string Model, string Qty, string OrderDate, string RepNo);
        #endregion

   public string GetNetPrice(string CompanyID, string CustomerNo, string Model, string Qty, string OrderDate, string RepNo)
        {
            Qty = Qty.Replace("^", ",");
            Model = Model.Replace("^", ",");

            OrderDate = "11/07/2014";
         
	    #region modelList
            if (Model.StartsWith("["))
            {
                Model = Model.Substring(1);
            }

            if (Model.EndsWith("]"))
            {
                Model = Model.Substring(0, Model.Length - 1);
            }
             
            #region qtyList
            if (Qty.StartsWith("["))
            {
                Qty = Qty.Substring(1);
            }

            if (Qty.EndsWith("]"))
            {
                Qty=Qty.Substring(0, Qty.Length - 1);
            }
            #endregion
            #region procedures
            try
            {
            string body = string.Format(@"<SOAP:Envelope><SOAP:Header></SOAP:Header>
            <SOAP:Body>
            <m:Retrieve>
            <itemid>
            <GenerateReportRequest><ReportType>CUST-NETPRICE</ReportType><ReportFormat>XML</ReportFormat>
            <ReportParams><CompanyNumber>{0}</CompanyNumber><CustomerNumber>{1}</CustomerNumber><Model>{2}</Model>
            <Quantity>{3}</Quantity><OrderDate>{4}</OrderDate><RepNumber>{5}</RepNumber><Delimiter>,</Delimiter>
            </ReportParams>
            </GenerateReportRequest>
            </itemid>
            </m:Retrieve>
            </SOAP:Body>
            </SOAP:Envelope>", CompanyID, CustomerNo, Model, Qty, OrderDate, RepNo);

                Usa.B2B.ERP.jBase.Helper.Retrieve d = new Usa.B2B.ERP.jBase.Helper.Retrieve(body);
                XmlDocument xml = new XmlDocument();
                xml.LoadXml(d.GetData());                
                string node =  xml.SelectSingleNode("//RetrieveResult").InnerXml.Replace(@"\","");                                  
	        string status = xml.SelectSingleNode("//Status").InnerXml;
                string orderDate = xml.SelectSingleNode("//OrderDate").InnerXml;
                string customerNumber = xml.SelectSingleNode("//CustomerNumber").InnerXml;
                string model = xml.SelectSingleNode("//Model").InnerXml;
                string orderDetailList = xml.SelectSingleNode("//OrderDetail").InnerXml;
                return node;
            }
            catch (Exception ex)
            {
                //ILog log = LogManager.GetLogger("");
                //log.Error(m => m("Error:", ex.ToString()));
                throw ex;
            }
            #endregion
        }

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Ronak Patel
Ronak Patel
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial