如果想让服务端直接返回json或者xml的话,可以考虑使用webservice、wcf,或者webapi。webservice基于xml,效率较慢,wcf虽然可以返回json,但是配置繁琐。webapi相较于前两者而言配置简单灵活,效率也不错。是asp.net平台上制作api接口的首选。

visual studio 2017 新建.net framework web应用程序,模板选择webapi,默认模板已经替你完成了大部分的配置,直接运行程序并浏览器访问默认控制器ValuesController,既/api/values即可看到效果。webapi的访问路由配置文件位于app_start文件夹下,配置方法与mvc路由差别不大。

如果想要将默认返回的xml格式不满意,想改成json格式的话,可以在global文件的Application_Start方法里添加:

GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();

这样返回的数据就会被格式化为json而不是xml了。

但是这时使用的序列化方法是系统自带的,如果想要自定义,可以在控制器里直接返回HttpResponseMessage类,不过HttpResponseMessage需要自己构建。

控制器里添加测试方法:

        [AcceptVerbs("get", "post")]    //配置接受的请求类型。
public HttpResponseMessage Demo()
{ string jsonStr = JsonConvert.SerializeObject(new {Id = , Name ="ka"});
HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(jsonStr,Encoding.GetEncoding("UTF-8"), "application/json")};
return result;
}

访问Demo方法即可看到结果。

参考博文:https://www.cnblogs.com/elvinle/p/6252065.html

最新文章

  1. MongoDB学习笔记~MongoDB实体中的值对象
  2. python基础--基本数据类型考试_day3
  3. 【PHP面向对象(OOP)编程入门教程】14.final关键字的应用
  4. CentOS 6.5 源码编译搭建LNMP(三台独立主机实现)
  5. iOS单元测试1
  6. Redis系列(一)——简介及安装
  7. jsp学习(四)
  8. fluent nhibernate 初体验
  9. CURL超时处理
  10. cocos2d-x学习笔记
  11. bzoj3208
  12. linux nfs开启
  13. LGTB与序列 状压dp
  14. JavaSE-反射-获取类或者对象的四种方法
  15. 读取含有BOM头的文件遇到的问题
  16. ChatGirl 一个基于 TensorFlow Seq2Seq 模型的聊天机器人[中文文档]
  17. 装饰器模式以及Laravel框架下的中间件应用
  18. jquery怎么选择嵌套的第一层的li
  19. JavaScript技巧总结和本地存储(二)
  20. [leetcode]35. Search Insert Position寻找插入位置

热门文章

  1. 【mysql】 操作 收集持续更新
  2. SpringMvc Ant通配符的使用
  3. 初识vue——起步
  4. 2道acm简单题(2013):1.(时分秒)时间相减;2.主持人和N-1个人玩游戏,每个人说出自己认识的人数,判断其中是否有人说谎。
  5. POJ - 2492 种类并查集
  6. elasticsearch分词器Jcseg安装手册
  7. OpenStack Ironic 常见问题
  8. HighGUI图形图像界面初步—— 图像的载入、显示与输出
  9. 导出CSV格式文件,用Excel打开乱码的解决办法
  10. Java Web项目(Extjs)报错八