【问题标题】:Is it better to return a json object with relations or without?返回一个有关系还是没有关系的 json 对象会更好吗?
【发布时间】:2017-07-06 13:59:34
【问题描述】:
我知道这可能在很大程度上取决于情况,但是..
如果我有两个不同的控制器。控制器 A 是控制器 B 的父级。
如果调用我的端点"/api/a/"。它会返回每个 A 和他们的每个孩子。
有没有效果?或者最好只从端点"api/a"返回所有As而不带他们的孩子,并分别从"api/b/[A's id]"这样的端点获取它
我可能在这个问题上搞砸了很多。
但也许有人可以给我一些方向,我应该遵循@_ @
【问题讨论】:
标签:
api
asp.net-web-api
asp.net-web-api2
【解决方案1】:
答案真的取决于。 A 多久包含一次来自 B 的数据? B有多大?
如果答案是 A 几乎一直都需要数据 B,并且 B 不是很大,那么我可能根本就没有 B 的控制器。在对 A 的每个请求中,我都会包含并返回 B。
如果答案是 A 几乎永远不需要 B,并且 B 相当大,那么在我的 A 对象中,我将包含一个 BUrl 属性,该属性具有 B 的 url,然后当我想要 B 时,我可以去获取它。
最后,另一种选择是只使用一个可选参数,该参数将根据请求包含 B。 ?includeb=true
这真的取决于情况。我喜欢更少的控制器,并在可行的情况下包括数据。维护和开销更少。