جمع تعداد ستونهای یک ستون از جدول با استفاده از GroupBy د رLinq

11/25/2016 MVC
1593

توی یک سالن برا ینمایش صندلی ها از ستر و ستون جهت ذخیره کردن مشخصات صندلی استفاده کردم حال میخواستم ببینم توی یک سالن چه تعداد صندلی برای راست دست ها و چه تعداد برای چپ دستها در نظر گرفته شده است که به صورت خلاصه نمایش داده شود

 

 برای این کار ابتدا از کد

            ViewBag.samllTree = _db.Trees.Where(x => x.TreeSizeId == 3 && x.SunFountainId == SubFountainId).GroupBy(l => l.XProp).Select(lg => new { PartID = lg.Key, InstanceCount = lg.Count() }).ToList().Sum(x => x.InstanceCount);

 استفاده کردم اما خطایی که داشتم این بود که در صورتی که مثلا در سالنی صندلی برای چپ دست نباشد خطای خالی بودن دریافت خواهیم کرد. و برای رفع این مشکل کد ها را به تفکیک نوشتم و در برای شرط شمارش برابر با صفر viewbag را پر کردم

 var ss = _db.Trees.Where(x => x.TreeSizeId == 3 && x.SunFountainId == SubFountainId).GroupBy(l => l.XProp).Select(lg => new { PartID = lg.Key, InstanceCount = lg.Count() }).ToList();

            if (ss.Count() == 0)
                ViewBag.samllTree = 0;
            if (ss.Count() != 0)
                ViewBag.samllTree = ss.Sum(x => x.InstanceCount);

 

را تغییر دادم 

 و در VIEW

 @ViewBag.samllTree