我想从请求对象中
获取MediaTypeFormatter,这可能吗?
因此,如果请求作为一个
application/json
那么我想得到MediaTypeFormatter,在这种情况下,它应该是一个JsonMediaTypeFormatter.
我需要这样做的原因是我的api方法可以支持MediaTypeFormatters(即XML和JSON).
我正在返回一个HttpResponseMessage并将Content设置为ObjectContent,我需要传入媒体类型格式化程序,如果我将此值硬编码为json,那么它将不支持xml.
有人做过这样的事吗?
提前致谢
您应该使用Request.CreateResponse
方法.不要试图根据媒体类型找出格式化程序. ASP.NET Web API为您进行
内容协商.如果请求带有品质因数和东西怎么办?编写所有逻辑会很复杂,并且已经在框架
代码中完成了.你所要做的就是使用这样的
方法 – Request.CreateResponse(HttpStatusCode.OK,product);并返回响应对象,而不是自己设置ObjectContent.根据从conneg中选择的格式化程序,您的对象将被序列化.或者,您是否有特定的场景,您不能使用它?
原文链接:https://www.f2er.com/aspnet/245512.html