C# 使用c以XML形式发送请求类型,并使用IHttpActionResult#
如何将请求类型数据作为XML传递 我已经创建了下面的IHttpAction结果,它接受并返回JSON数据。我的要求是发送一个XML请求并返回XML repsonse。我已经在[DataMember]中添加了XMLAttribure,但在swagger中仍然显示为请求对象JSONC# 使用c以XML形式发送请求类型,并使用IHttpActionResult#,c#,rest,wcf,C#,Rest,Wcf,如何将请求类型数据作为XML传递 我已经创建了下面的IHttpAction结果,它接受并返回JSON数据。我的要求是发送一个XML请求并返回XML repsonse。我已经在[DataMember]中添加了XMLAttribure,但在swagger中仍然显示为请求对象JSON [HttpPost] [Route("api/getuser")] public IHttpActionResult getuser(PortalRequest xmlRequest) { return Ok(
[HttpPost]
[Route("api/getuser")]
public IHttpActionResult getuser(PortalRequest xmlRequest)
{
return Ok("success);
}
[DataContract]
[XmlSerializerFormat]
public class PortalRequest
{
[DataMember, XmlAttribute]
public string UserId { get; set; }
[DataMember, XmlAttribute]
public string UserName { get; set; }
[DataMember, XmlAttribute]
}
在HttpConfiguration中,您需要添加以下行,以将XML作为可接受的格式
config.Formatters.JsonFormatter.SupportedMediaTypes.Clear();
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/xml"));
我有一些返回JSON的现有方法,所以如果我在Config中添加application/xml,它不会影响其他结果?我希望这不会成为一个问题,因为它不会影响其他接收applicationno/json格式的方法。但是一定要在你的开发中测试它,看看它是如何改变招摇的