我正在努力找出使用Angular和Web Api的一些数据重用原则。
我们有一个例子。我正在创建一个CRUD表单的管理网站。
对象:专精(父)名称(字符串,子项) 专业化)描述(字符串,专业化的孩子) 要求(收集,专业的孩子) 挑战(收集,专业化的孩子)ChallengeName(字符串, 挑战的孩子)StartDate(日期,挑战的孩子) 活动(收集,挑战的孩子)
在主页面上,我将调用GetAllSpecializations
并列出它们。在此页面上,您可能会遇到与该专业化相关的3个挑战。
我将选择其中一个挑战来获取有关该挑战的详细信息。此时我会查询在初始GetAllSpecializations
服务调用中创建的客户端对象吗?或者我是否需要单独调用GetSpecialization(id)
API调用。
后者是一种典型的做事方式,但他们认为有一些数据重用可以在CRUD视图中发生而不需要调用来获取每个视图的所有细节。
感谢您对最佳做法的任何澄清。
答案 0 :(得分:0)
这一切都取决于初始调用中数据的大小。如果它是静态的,不超过几KB并且您不担心初始响应时间,则可以获取所有记录并将其存储在范围内。 然后,您可以根据需要显示/隐藏数据。
每个单独项目的呼叫服务当然会很快,因为响应数据较少,但会增加服务呼叫次数,从而增加网络流量。
第一种方法总是很好,尽管在页面加载中需要稍多的时间,但后续请求会立即提供。