.net 嵌套下拉填充的最佳实践API [已关闭]

oymdgrw7  于 2022-12-24  发布在  .NET
关注(0)|答案(1)|浏览(99)

已关闭。此问题为opinion-based。当前不接受答案。
**想要改进此问题吗?**请更新此问题,以便editing this post可以用事实和引文来回答。

4天前关闭。
Improve this question
我有一个叫做客户的实体,一个叫做制造商的实体,它们都有一个businessTypeId。
视图上传递的模型不包含businessTypes的整个列表(大约30 k),单击下拉列表时会加载businessTypes列表。
有些业务类型对厂商不可用,有些业务类型对客户不可用。
就服务于业务类型列表的端点而言,您认为最佳实践是什么?

每个控制器上的两个端点使用实体ID来了解当前选择的是哪个端点

  • /客户端/{id}/业务类型
  • /制造商/{id}/业务类型

这一点很清楚,但我感觉它阻碍了DRY概念的发展(即使在后台共享了一个businesstype存储库),而且嵌套的集合越多,我需要的端点就越多

businesstypes控制器上的一个端点,并添加路由起点两个能够过滤结果

  • /业务类型?来源={实体}&ID={ID}

然后,端点只被创建一次,但是每次将新实体链接到businessTypes时,端点都会变得越来越复杂
"更好的第三个主意"

bf1o4zei

bf1o4zei1#

选项1:将业务类型拆分为ClientBusinessTypesManufacturerBusinessTypes,这两个类型继承自一个公共类,以便基于基类处理显示逻辑,并在继承级别处理获取。
选项2:您所描述的独立端点。我将向数据集添加一个'BusinessTypeCategory'值,这样您的逻辑就不会变得更复杂,它只会在'where Category = origin'语句中使用origin参数,并且不可知任何新的BusinessTypeCategory。

相关问题