【发布时间】:2012-07-07 08:09:17
【问题描述】:
我们正在构建一个其 GET 方法返回 DTO 的 Web api。我们希望构建它,以便在某些情况下,这些 DTO 被剥离了不必要的属性,以控制向下发送到客户端的数据量。例如,当我们返回一封电子邮件 DTO 时,我们有时希望客户指定它只需要主题、日期和 ID,而不是电子邮件的正文。在其他情况下,当然需要电子邮件的正文。
MVC WebApi 中执行此操作的最佳方式是什么?我研究了 MediaTypeFormatters,但他们似乎专注于数据的格式(JSONP、XML)而不是内容。
【问题讨论】:
-
有很多方法可以做到这一点,最好是通过消息处理程序,但很难说什么,因为您没有指定如何确定将返回哪种对象/属性集作为响应给定的请求。通过自定义标题?通过一些IP白名单?通过查询字符串?
-
抱歉这个含糊的问题。我想使用自定义标头来指示要返回的对象/属性集。我将更多地研究消息处理程序。谢谢。
-
Facebook Graph API 使用查询字符串参数 fields developers.facebook.com/docs/reference/api/selecting-results ,尽管这不是很 RESTy
-
我想你可能会在这个问题中找到答案:stackoverflow.com/questions/13606675/…
标签: asp.net-web-api