public long CountofSoasToUser(long userId)
        {
            var  q = _Userrepository.Get_ZirReshtehId_by_UserId(userId);
            long s = 0;

            foreach (var n in q)
            {
                s += _soalRepository.GetAllByzirreshteh(n)
                     .Where(x =>
                            !x.SoalToUser.Select(f => f.Soal.Id).Contains(x.Id)).Count();
            }
            return(s);
        }
        private IList <SoalToUser> Post_Soal_To_user_by_UserId(long userId)
        {
            var u = _Userrepo.Get_ZirReshtehId_by_UserId(userId);
            //سوالهای مرتبط با زیر رشته کاری و بزرگتر از آخرین سوال پرسیده شده از کاربر باشد
            var s = _soalRepo.GetAllByzirreshteh(u)
                    .Where(x => x.Id > _soalRepo.lastSoalToUserId(userId)).ToList();
            IList <SoalToUser> StoU = new List <SoalToUser>();
            var User = _Userrepo.GetById(userId);

            foreach (var n in s)
            {
                StoU.Add(new SoalToUser
                {
                    Isdeleted = false,
                    Soal      = n,
                    User      = User,
                    IsVisited = true
                });
            }
            db.AddThisRange(StoU);
            //db.Addnew(StoU);
            db.SaveAllChanges();
            return(StoU.ToList());
        }