【发布时间】:2020-03-16 04:47:41
【问题描述】:
我有一个 Ef 核心 linq 查询,我想按“VehicleNo”字符串对记录进行分组,然后按组键的子字符串对结果组进行排序。
var theGroup = Model.CreditSaleMaster.GroupBy(dd => dd.ProductSaleMaster.VehicleNo).OrderBy(d =>
d.Key.Substring(d.Key.Length - 4, 4));
虽然上述代码执行时没有错误,但生成的子实体(如 productsalemaster)返回 null。
我想要实现的是首先使用 Productsalemaster.VehicleNo 对结果进行分组,然后通过车辆编号的最后 4 位数字的子字符串“对结果组进行排序”。
例如,三个车辆编号组按字母顺序生成为 AP012S0222、TR03M2012、TS07R0222。取结果组,然后根据组密钥的最后四位数字(即车辆编号)对组进行排序,以便结果应该是组集合应该像 AP012S0222、TS07R0222、TR03M2012 那样排序。我希望它能解决我的担忧。
感谢任何帮助。
【问题讨论】:
-
这个问题我不清楚。请同时添加您当前的结果和预期结果。
-
我已经添加了预期的结果。请见上文。
-
The resulting groups child entities like productsalemaster are returning null.是什么意思。您可以根据Productsalemaster.VehicleNo对项目进行分组并对其进行排序,对吗? -
这就是问题所在。在车辆编号上对项目进行分组后。我如何按组键对组进行排序?上面的问题描述中提到了该示例。
-
所以这个
.OrderBy(d => d.Key.Substring(d.Key.Length - 4, 4));不起作用?
标签: c# entity-framework linq asp.net-core