I want to filter data when Modifyon is null then on basis of createon orderby and when Modifyon is not null then orderby on modifyon
async Task<PagedList<NotifyData>> IManager.GetApprovedUnapprovednotificationList(NotificationPagingSearch Items) { List<NotifyData> _NotifyData = new List<NotifyData>(); var DeptId = _authenticationManager.GetAuthenticatedUser().Result.DeptId; try { _NotifyData = (from Notification in _dbContext.NotificationHeader join MstStage in _dbContext.MstStage on Notification.Status equals MstStage.Id where Notification.DeptId == (DeptId == 0 ? Notification.DeptId : DeptId) && Notification.Status == (Items.Status == 100 ? Notification.Status : Items.Status) && Notification.CreatedOn.Value.Date >= (Items.FromDate == string.Empty ? Notification.CreatedOn.Value.Date : ApplicationData.AppStringToDatetime(Items.FromDate)) && Notification.CreatedOn.Value.Date <= (Items.ToDate == string.Empty ? Notification.CreatedOn.Value.Date : ApplicationData.AppStringToDatetime(Items.ToDate)) select new { RefNId = Notification.RefNid, NType = Notification.Ntype, UserType = (int)Notification.UserType, DeptId = (int)Notification.DeptId, CourseId = (int)Notification.CourseId, NotificationH = Notification.NotificationH, NotificationB = Notification.NotificationB, Comment = Notification.Comment, StatusId = (int)MstStage.Id, Status = MstStage.Mode, CreatedBy = (int)Notification.CreatedBy, CreatedOn = Notification.CreatedOn, ModifiedBy = (int)Notification.ModifiedBy, ModifiedOn = ApplicationData.AppDateToString(Notification.ModifiedOn) }).AsEnumerable().OrderByDescending(x => x.CreatedOn).Select((k, index) => new NotifyData() { SrlNo = index + 1, RefNId = k.RefNId, NType = k.NType, RoleName = GetUserTypeName(k.UserType).Result, DeptId = k.DeptId, DeptName = GetDepartmentName(k.DeptId).Result, CourseId = k.CourseId, CourseName = GetCourseName(k.CourseId).Result, NotificationH = k.NotificationH, NotificationB = k.NotificationB, Comment = k.Comment, StatusId = k.StatusId, Status = k.Status, CreatedBy = k.CreatedBy, CreatedOn = ApplicationData.AppDateToString(k.CreatedOn), ModifiedBy = k.ModifiedBy, ModifiedOn = k.ModifiedOn, Can_Approve = GetRegistationBtnAccessResult(_authenticationManager.GetAuthenticatedUser().Result.UserId, UserManageAccess.NotificationPage, UserManageAccess.NotificationApproveAction, k.RefNId).Result, // Can_Save = GetRegistationResult(_authenticationManager.GetAuthenticatedUser().Result.UserId, UserManageAccess.NotificationPage, UserManageAccess.NotificationSendAction).Result }).ToList(); } catch (Exception ex) { } return await Task.Run(() => { return new PagedList<NotifyData>(_NotifyData.AsQueryable(), Items.PageNumber, Items.PageSize); }); }