考虑以下数据对象:
OrderId WarehouseId Sku Dropship
========================================
630 1 ABC-123 Yes
630 2 ABC-123 T
630 3 ABC-123 null
630 1 XYZ-789
630 2 XYZ-789 null
630 3 XYZ-789
我需要一个linq查询来获取不属于dropship项目的项目数。飞船的确定是:
Dropship = false
:如果Dropship
字段为null
或empty
,则所有3 {{1} }}。在上面的示例中,sku
不会被视为dropship项目。
WarehouseId
:如果sku XYZ-789
字段为Dropship = true
或Dropship
,则任何一个的给定not null
not empty
。在上面的示例中,sku
将被视为dropship项目。
使用以下查询,我希望得到WarehouseId
的结果,但收到sku ABC-123
。
1
答案 0 :(得分:0)
而不是controller as
使用ng-controller="mainController"
而!string.IsNullOrEmpty(x.Dropship)
中的!(x.Dropship==null || x.Dropship.Equals(""))
存在一些问题。
答案 1 :(得分:0)
当您不需要群组时,我更倾向于.Select().Distinct().Count()
使用.GroupBy().Count()
,不确定哪个群组更有效率。
int dropshipItems = orderItems
.Where(x => !string.IsNullOrEmpty(x.Dropship.Trim()))
.Select(x => x.Sku)
.Distinct()
.Count();