关于PropertyMappingValue的列表意义疑问
来源:15-4 【应用】创建属性(Property) 映射服务

慕设计9348276
2021-04-24
老师好,我看到order by这里的映射服务是有个疑问,就是PropertyMappingValue为什么要使用List而不是直接string呢?我发现实际使用的时候都是一一对应的啊,如: { “Id”, new PropertyMappingValue(new List(){ “Id” }) },DestinationProperties会有多个值的情况存在么? 这样的话,是不是 PropertyMappingValue可以直接用string代替呢?而且后面IQueryable的扩展函数里,还要用foreach对这个只有一个值的列表去遍历,还用Reverse,这里看了几遍没有怎么看明白,可否请老师解释一下,谢谢
写回答
1回答
-
阿莱克斯刘
2021-05-31
hello 同学你好。请考虑一下这条api
http://localhost:3000/api/touristRoutes?orderby=rating desc, originalPrice desc
这条api的orderby有两个属性,属性之间使用逗号隔开。而这个api的意思是“旅游路线先以rating降序排列,然后再以originalPrice的降序排列”,也就是说这个时候需要处理的是双(多)重排列的情况。
既然是多重排列,那么需要进行排列的属性自然是列表才对,所以PropertyMappingValue自然需要使用列表而不是直接使用string了;而对列表进行Reverse是为了输出正确的顺序。
请留意课程15-5最后的例子
00
相似问题