0

我有以下代码:

var workOrderList = new List<WorkOrder>(
               from index in Enumerable.Range(1, orders.Length)
               select new WorkOrder
               {
                   OrderID = orders[index - 1],
                   Status = status[random.Next(0,status.Length-1)],
                   TotalQuantity = random.Next(1, 5) * 8,
                   ScheduleCollection = new ObservableCollection<Schedule>
                   {
                     new Schedule
                       {
                           Color = colors[random.Next(0,colors.Length-1)],
                           Model = models[random.Next(0,models.Length-1)],
                           Status = status[random.Next(0,status.Length-1)],
                           TotalNumber = To be Updated bases on Total Quantity
                       }
}

现在我想通过从 TotalQuantity 中除或减去值来更新 Total Number 。

4

1 回答 1

1

在查询中使用let子句来提取常用表达式:

var workOrderList = new List<WorkOrder>(
    from index in Enumerable.Range(1, orders.Length)
    let totalQuantity = random.Next(1, 5) * 8
    select new WorkOrder
    {
        OrderID = orders[index - 1],
        Status = status[random.Next(0,status.Length-1)],
        TotalQuantity = totalQuantity,
        ScheduleCollection = new ObservableCollection<Schedule>
        {
          new Schedule
            {
                Color = colors[random.Next(0,colors.Length-1)],
                Model = models[random.Next(0,models.Length-1)],
                Status = status[random.Next(0,status.Length-1)],
                TotalNumber = // Do something with totalQuantity
            }
        }
    });
于 2012-11-23T09:28:24.997 回答