关于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最后的例子

0
0

.Net 开发电商后端API 从0到精通RESTful

. Net 实战+RESTful思想纵深课程,开发优雅RESTful风格API。

977 学习 · 547 问题

查看课程