当前位置:  开发笔记 > 编程语言 > 正文

如何从ASP.NET Web API读取XML?

如何解决《如何从ASP.NETWebAPI读取XML?》经验,为你挑选了1个好方法。

我有一个Web API,它将读取XML并将其传递给适当的模型进行处理.

我怎样才能收到即将发布的XML?我应该使用哪种数据类型?

什么时候使用StreamReader,StreamContent或者XmlDocument还是其他?



1> Despertar..:

ASP.NET Web API使用内容协商将传入的http请求自动反序列化为模型类.开箱即用,这将适用于任何XML,JSON或wwww-form-urlencoded消息.

public class ComputerController : ApiController
{
    public void Post(ComputerInfo computer)
    {
        // use computer argument
    }
}

创建一个映射到XML属性的模型类.

public class ComputerInfo
{
    public string Processor { get; set; }
    public string HardDrive { get; set; }
}

这个传入的XML将被反序列化,以便在Post方法中对计算机参数进行水合.


   AMD
   Toshiba


如果由于某种原因你想手动读取和解析传入的xml,你可以这样做

string incomingText = this.Request.Content.ReadAsStringAsync().Result;
XElement incomingXml = XElement.Parse(incomingText);

推荐阅读
  • 如何使用vue3打造一个物料库
    这篇文章主要介绍了如何使用vue3打造一个物料库,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下 ... [详细]
  • 这篇文章主要介绍了vue组件之间相互传值的方式,对vue感兴趣的同学,可以参考下 ... [详细]
  • 这篇文章主要介绍了React代码共享最佳实践方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 ... [详细]
  • Vue Element前端应用开发之echarts图表
    在我们做应用系统的时候,往往都会涉及图表的展示,综合的图表展示能够给客户带来视觉的享受和数据直观体验,同时也是增强客户认同感的举措之一 ... [详细]
  • 众所周知,性能是Web应用界面的关键方面,它直接影响到用户的使用体验。本文将向您展示十种提高ReactUI性能的特定技术和一般方法。 ... [详细]
  • Axios是一个非常优秀的基于promise的HTTP库,可以用在浏览器和node.js中。并且提供了很多便捷的功能,但如果我们想基于axios扩展一些自己的数据请求方式(例如某些APP内专属的数据请求方式等),并能够使用上axios提供的便捷功能,该怎么自定义一个适配器adapter ... [详细]
  • 这篇文章主要为大家详细介绍了vue实现无缝轮播效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ... [详细]
  • 模块化简单来说就是将一个完整的长篇代码文件根据功能进行划分成几个文件,这些文件各自负责一个独立的功能,各个文件组合起来实现一个完整的大功能,这就是模块化,每个负责独立功能的文件就是模块。 ... [详细]
  • 如何用JS追踪用户
    本文介绍如何编写JavaScript脚本,将用户数据发回服务器。对此感兴趣的同学,可以参考下 ... [详细]
  • 详解React Angular Vue三大前端技术
    当前世界中,技术发展非常迅速并且变化迅速,开发者需要更多的开发工具来解决不同的问题。本文就对于当下主流的前端开发技术React、Vue、Angular这三个框架做个相对详尽的探究,目的是为了解开这些前端技术的面纱,看看各自的庐山真面目。 ... [详细]
  • JavaScript 检测文件的类型的方法
    在日常工作中,文件上传是一个很常见的功能。在某些情况下,我们希望能限制文件上传的类型,比如限制只能上传PNG格式的图片。本文就将针对这个问题,来讲解如何检测文件的类型 ... [详细]
  • 最新热门脚本Autojs源码分享
    AutoJS是基于一个标准字典库的文本输入自动完成JavaScript库。Auto.js是使用纯JS实现的,没有任务外部依赖,大小仅仅6kb,本文给大家分享最新热门脚本Autojs源码,感兴趣的朋友一起看看吧 ... [详细]
  • 浅析React中的受控组件和非受控组件
    具体来说这是一种react非受控组件,其状态是在input的react内部控制,不受调用者控制。可以使用受控组件来实现。下面就说说这个React中的受控组件与非受控组件的相关知识,感兴趣的朋友一起看看吧 ... [详细]
  • Vue和Flask通信的实现
    最近新做了个项目,前端使用的是目前很流行的前端框架,对于后端,本项目选择的是比较好上手、轻量级的python后台框架:Flask。感兴趣的可以了解一下 ... [详细]
  • 详解Angular组件生命周期(一)
    每个Angular版本在其生命周期中都经历了各个阶段。组件在Angular中起着关键作用;在这里,本文将讨论Angular中的组件生命周期以及它们如何影响框架所有版本的生命周期。 ... [详细]
  • hadoop格式化HDFS出现错误解决办法
    这篇文章主要介绍了hadoop格式化HDFS出现错误解决办法的相关资料,hadoop格式化HDFS报错java.net.UnknownHostException,这里提供解决办法,需要的朋友可以参考下 ... [详细]
  • 有时远程下载tar包,由于包太大,失去连接时,需要重新下载非常郁闷。可以使用split分割分解拆分大包文件,然后,单个下载下文件就可以了。在Linux下使用tar命令来将文件打包并压缩是很通常的用法了。可是Linux的文件系统对文件大小有限制,也就是说一个 ... [详细]
  • Ubuntu安装后root是没有默认的密码的,因为你还没给root设置密码,你第一个user是在admin组,他可以给root设置密码,所以大家不要费脑筋想当初自己设的密码是多少了,因为根本就不存在。端口输入如下命令:sudopasswdroot[sudo]passwordforyou ... [详细]
  • 简明Linux命令行笔记4:mkdirmkdirmkdir也就是创建目录的意思1.用法mkdir[选项]...目录...2.常用参数-m用来设置权限模式,默认是0777,可用chmod更改-p用来创建多级目录-v显示创建新目录时的信息3.命令技巧创建默认权限的目录siu@Darling~ ... [详细]
  • 减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和ta ... [详细]
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有