dwa4821 2016-12-10 06:49 采纳率: 71.4%
浏览 2791
已采纳

如何用拉姆达表达式进行筛选

如何用拉姆达表达式代替foreach进行结果筛选

ProductModel productmodel = new ProductModel();
 int? prostate_0 = 0;
        int? prostate_1 = 0;
        int? prostate_2 = 0;
        productmodel.Shop = _Shop;
        List<ProductModel> listcount = productmodel.Listcount();
        foreach (ProductModel item in listcount)
        {
            if (item.Pro_stateNum != null)
            {
                switch (item.Pro_state)
                {
                    case 0:{
                            prostate_0 = item.Pro_stateNum;
                        } break;
                    case 1:{
                            prostate_1 = item.Pro_stateNum;
                        } break;
                    case 2:{
                            prostate_2 = item.Pro_stateNum;
                        } break;
                }
            }
        }
  • 写回答

2条回答 默认 最新

  • threenewbee 2016-12-17 06:03
    关注
     还可以简化下
    List<ProductModel> listcount = productmodel.Listcount();
    ->
    List<ProductModel> listcount = productmodel.Where(x => x.Pro_stateNum != null).Listcount();
    
    productmodel.ForEach((item) => {
                    switch (item.Pro_state)
                    {
                        case 0:{
                                prostate_0 = item.Pro_stateNum;
                            } break;
                        case 1:{
                                prostate_1 = item.Pro_stateNum;
                            } break;
                        case 2:{
                                prostate_2 = item.Pro_stateNum;
                            } break;
                    }
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?