码迷,mamicode.com
首页 > Web开发 > 详细

WebService 返回json格式和返回xml格式的数据

时间:2014-06-18 10:11:35      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:des   style   class   blog   code   http   

返回json格式

//using System.Web.Script.Services;
        [WebMethod]
        [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
        public void HelloWorld()
        {
            Context.Response.Clear();
            Context.Response.ContentType = "application/json";
            Model.User.User_User user = new Model.User.User_User();
            user.UserName = "我们";
            user.UID = 1;
            user.UserPassWord = "123456";
            Jayrock.Json.JsonTextWriter writer = new Jayrock.Json.JsonTextWriter();
            Jayrock.Json.Conversion.JsonConvert.Export(user, writer);
            Context.Response.Write(writer.ToString());
        }

效果:

bubuko.com,布布扣

 

返回xml格式

[WebMethod]
        public XmlDocument HelloWorld()
        {
            downList doo = new downList();
            List<file> flist = new List<file>();
            file f = new file();
            f.name = "test";
            f.value = "t";
            flist.Add(f);
            List<sql> slist = new List<sql>();
            List<desc> dlist = new List<desc>();
            version ver = new version();

            doo.version = ver;
            doo.sqlList = slist;
            doo.fileList = flist;

            XmlDocument XmlDoc = new XmlDocument();
            string xmlstring = Utility.Tool.Serialize(doo);
            XmlDoc.LoadXml(xmlstring);
            return XmlDoc;
        }
public class downList
    {
        public List<file> fileList;

        public List<sql> sqlList;

        public version version;

        public List<desc> descList; 

        public int result;
    }



    public class sql
    {
        [XmlText]
        public string value;
    }

    [Serializable]
    public class file
    {
        [XmlAttribute]
        public string name;

        [XmlText]
        public string value;
    }

    public class desc
    {
        [XmlText]
        public string value;
    }

    [Serializable]
    public class version
    {
        [XmlAttribute]
        public string name;
    }

 

/// <summary>
        /// 将指定的对象序列化为XML格式的字符串并返回。
        /// </summary>
        /// <param name="o">待序列化的对象</param>
        /// <returns>返回序列化后的字符串</returns>
        public static string Serialize(Object o)
        {
            string xml = "";
            try
            {
                XmlSerializer serializer = new XmlSerializer(o.GetType());
                using (MemoryStream mem = new MemoryStream())
                {
                    using (XmlTextWriter writer = new XmlTextWriter(mem, Encoding.UTF8))
                    {
                        writer.Formatting = Formatting.Indented;
                        XmlSerializerNamespaces n = new XmlSerializerNamespaces();
                        n.Add("", "");
                        serializer.Serialize(writer, o, n);

                        mem.Seek(0, SeekOrigin.Begin);
                        using (StreamReader reader = new StreamReader(mem))
                        {
                            xml = reader.ReadToEnd();
                        }
                    }
                }
            }
            catch { xml = ""; }
            return xml;
        }

效果:

bubuko.com,布布扣

 

WebService 返回json格式和返回xml格式的数据,布布扣,bubuko.com

WebService 返回json格式和返回xml格式的数据

标签:des   style   class   blog   code   http   

原文地址:http://www.cnblogs.com/hougelou/p/3793156.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!