我想在.NET核心+实体框架核心上构建我的API。
我非常熟悉Sequelize ORM(javascript),在这里您可以完全控制定制查询。
例如,假设有一个数据模型,其中有学校,每个学校都有许多学生。
有时我只想查询学校(较快),有时我想查询有学生的学校(较慢)。
因此,在Sequelize服务器上使用axios客户端,我可以:
// including students (slower)
this.$axios.$get('/api/school',{ params : { where: { Country: 'US' }, include: [{ model: 'Student' }] } })
// not including students (faster)
this.$axios.$get('/api/school',{ params : { where: { Country: 'US' } })
然而,我找不到一种方法来做一些类似的与axios和.NET核心
有没有人知道或者可以指向一些文档的链接来管理Entity Framework Core + .NET Core API中的客户端可选包含?
1条答案
按热度按时间ddarikpa1#
如果使用EF查询实体,则可以定义要在查询中包括哪些子对象,如下所示:
要在您的端点中实现此功能,请执行以下操作:
虽然不建议客户定义要包含的内容。如果有财务数据连接到学校,而客户也包含了这些数据怎么办?!你肯定不希望这样!
我建议创建一个单独的端点,并在API中查询include,而不是在客户端进行查询,如下所示:
为简洁起见,忽略对国家/地区的筛选。