zoukankan      html  css  js  c++  java
  • WebService 返回json格式和返回xml格式的数据

    返回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());
            }

    效果:

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

    效果:

  • 相关阅读:
    HLJU 1221: 高考签到题 (三分求极值)
    [视频解说]Java(JDK的下载安装及第一个程序执行)
    llvm中如何利用分支概率和基本块频率估计
    Nginx SSL TLS部署最佳实践
    Nginx使用教程(一):Nginx编译参数详解
    Nginx使用教程(一):下载并编译安装Nginx
    nginx使用ssl模块配置HTTPS支持
    Linux下安装Tomcat服务器和部署Web应用
    TOMCAT-报错The BASEDIR environment variable is not defined correctly
    Kafka vs RocketMQ——多Topic对性能稳定性的影响-转自阿里中间件
  • 原文地址:https://www.cnblogs.com/hougelou/p/3793156.html
Copyright © 2011-2022 走看看