加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-16 21:51:21 所属栏目:安全 来源:网络整理
导读:返回json格式 // using System.Web.Script.Services; [WebMethod] [ScriptMethod(UseHttpGet = true ,ResponseFormat = ResponseFormat.Json)] public void HelloWorld() { Context.Response.Clear(); Context.Response.ContentType = " application/json "
返回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;
        }

效果:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读