自己写的输出xml和json的几个方法,和WebService,jquery ajax配合用

来源:互联网 发布:豆瓣top250 知乎 编辑:程序博客网 时间:2024/05/16 03:20
using System.Xml;using System.Data.SqlClient;using System.Collections;class pz_xmljson{    public XmlDocument xmlLoad(SqlDataReader sdr, string[] nodeName)    {        XmlDocument xmlDoc = new XmlDocument();        XmlDeclaration xmlDec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);        xmlDoc.AppendChild(xmlDec);        XmlNode xmlNode = xmlDoc.CreateElement("XmlOjects");        xmlDoc.AppendChild(xmlNode);        if (sdr.FieldCount == nodeName.Length)        {            while (sdr.Read())            {                XmlElement node = xmlDoc.CreateElement("XmlObject");                xmlNode.AppendChild(node);                for (int i = 0; i < nodeName.Length; i++)                {                    XmlElement element = xmlDoc.CreateElement(nodeName[i]);                    element.InnerText = sdr[i].ToString();                    node.AppendChild(element);                     }            }            sdr.Close();        }        return xmlDoc;    }    public XmlDocument xmlLoad(SqlDataReader sdr)    {        XmlDocument xmlDoc = new XmlDocument();        XmlDeclaration xmlDec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);        xmlDoc.AppendChild(xmlDec);        XmlNode xmlNode = xmlDoc.CreateElement("XmlOjects");        xmlDoc.AppendChild(xmlNode);        while (sdr.Read())        {            XmlElement node = xmlDoc.CreateElement("XmlObject");            xmlNode.AppendChild(node);            for (int i = 0; i < sdr.FieldCount; i++)            {                XmlElement element = xmlDoc.CreateElement(sdr.GetName(i));                element.InnerText = sdr[i].ToString();                node.AppendChild(element);                     }        }        sdr.Close();        return xmlDoc;    }    public XmlDocument xmlReturnValue(bool isSuccess)    {        XmlDocument xmlDoc = new XmlDocument();        XmlDeclaration xmlDec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);        xmlDoc.AppendChild(xmlDec);        XmlNode xmlNode = xmlDoc.CreateElement("XmlOjects");        xmlDoc.AppendChild(xmlNode);        XmlElement node = xmlDoc.CreateElement("ReturnValue");        if (isSuccess)            node.InnerText = "true";        else            node.InnerText = "false";        xmlNode.AppendChild(node);        return xmlDoc;    }    public XmlDocument xmlReturnValue(bool isSuccess, string nodeName)    {        XmlDocument xmlDoc = new XmlDocument();        XmlDeclaration xmlDec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);        xmlDoc.AppendChild(xmlDec);        XmlNode xmlNode = xmlDoc.CreateElement("XmlOjects");        xmlDoc.AppendChild(xmlNode);        XmlElement node = xmlDoc.CreateElement(nodeName);        if (isSuccess)            node.InnerText = "true";        else            node.InnerText = "false";        xmlNode.AppendChild(node);        return xmlDoc;    }    public string jsonLoad(SqlDataReader sdr, string[] nodeName)    {        string returnValue = string.Empty;        if (sdr.FieldCount == nodeName.Length)        {            returnValue = "[";            while (sdr.Read())            {                returnValue += "{";                for (int i = 0; i < nodeName.Length; i++)                {                    returnValue += "\"" + nodeName[i] + "\":";                    returnValue += "\"" + sdr[i].ToString() + "\",";                }                returnValue = returnValue.Substring(0, returnValue.Length - 1) + "},";            }            returnValue = returnValue.Substring(0, returnValue.Length - 1) + "]";            sdr.Close();        }        return returnValue;    }    public string jsonLoad(SqlDataReader sdr)    {        string returnValue = string.Empty;        returnValue = "[";        while (sdr.Read())        {            returnValue += "{";            for (int i = 0; i < sdr.FieldCount; i++)            {                returnValue += "\"" + sdr.GetName(i) + "\":";                returnValue += "\"" + sdr[i].ToString() + "\",";            }            returnValue = returnValue.Substring(0, returnValue.Length - 1) + "},";        }        returnValue = returnValue.Substring(0, returnValue.Length - 1) + "]";        sdr.Close();        return returnValue;    }    public string jsonReturnValue(bool isSuccess)    {        string returnValue = string.Empty;        returnValue = "[{\"ReturnValue\":";        if (isSuccess)            returnValue += "\"true\"";        else            returnValue += "\"false\"";        returnValue += "}]";        return returnValue;    }    public string jsonReturnValue(bool isSuccess, string nodeName)    {        string returnValue = string.Empty;        returnValue = "[{\"" + nodeName + "\":";        if (isSuccess)            returnValue += "\"true\"";        else            returnValue += "\"false\"";        returnValue += "}]";        return returnValue;    }    public string toJson(string key, string value)    {        string returnValue = string.Empty;        returnValue = "[{\"" + key + "\":";        returnValue += "\"" + value + "\"";        returnValue += "}]";        return returnValue;    }    public XmlDocument toXml(string key, string value)    {        XmlDocument xmlDoc = new XmlDocument();        XmlDeclaration xmlDec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);        xmlDoc.AppendChild(xmlDec);        XmlNode xmlNode = xmlDoc.CreateElement("XmlOjects");        xmlDoc.AppendChild(xmlNode);        XmlElement node = xmlDoc.CreateElement(key);        node.InnerText = value;        xmlNode.AppendChild(node);        return xmlDoc;    }}


 

WebService直接这么输出

-----------------------------------------------------------------------

json: pz_xmljson xj = new pz_xmljson();             Context.Response.Write(xj.toJson("value", tmp));  //xj.jsonLoad(SqlDataReader sdr)            Context.Response.End();


 

jquery  ajax这么拿值

-----------------------------------------------------------------------

 

 $.ajax({                url: "WebService.asmx/******",                type: "POST",                data: {                    receiverid: 。。。。,                    key: 。。。。                },                dataType: "json",                success: function(result) {                           result[0].value  。。。。。                         }       多个值的话用      $.each(result, function(i, n) {           n.Name。。。。          n.ID。。。。。         n.***。。。。。}

0 0
原创粉丝点击