假设我有一个对象,上面有 13 个实体。
当我进行通用数据选择时,必须将它们全部展开是很乏味的。
有没有办法扩展该对象上的所有对象(但不是子对象)? (我指的是在 C# 代码中执行此操作,而不是在 OData URL 中执行此操作。)
没有内置任何东西可以做到这一点。 您可以编写一个辅助方法,该方法将使用反射,检查有问题的类型并确定导航属性列表,然后在查询中添加它们的扩展。 另一方面,选择加入扩展的原因是它是有代价的(有效负载很快就会变大)。
要展开 OData 实体的所有引用和集合属性,您可以使用 Expand=* 语法。
例如:
https://localhost:44319/api/odata/Project?&$expand=*