首页 > 代码库 > WebService 返回json格式和返回xml格式的数据
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; }
效果:
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。