LINQ的使代码更加整洁,但往常递归都会需要定义两个方法,如果使用Razor语法书写递归就会变得无从下手。所以推荐使用LINQ实现递归
@{ //统计名片认证数量 var TuiJianMingPianTotal = 0; Func<int, int> MingPian = null; MingPian = id => { var basmas = DBHelper.BASMA.Where(ma => ma.MA021.Equals(id) && ma.MA038 != null); TuiJianMingPianTotal += basmas.Count(); foreach (var it in basmas) { MingPian(it.ID); } return TuiJianMingPianTotal; }; } @MingPian(item.ID)