public static StructureForTask5 Task5(int i)
        {
            userServive = new Service();
            List <User> users     = userServive.GetUsers();
            var         structure = users.Where(u => u.Id == i).Select(
                u => new
            {
                User               = u,
                LastPost           = u.posts.OrderByDescending(t => t.CreatedAt).FirstOrDefault(),
                LastPostComments   = (u.posts.OrderByDescending(t => t.CreatedAt).FirstOrDefault()).comments.Count,
                FailedTodo         = u.todos.Where(t => t.ISComplete == false).Count(),
                PopularPostComment = u.posts.Where(p => p.Body.Length > 80).OrderByDescending(p => p.comments.Count).FirstOrDefault(),
                PopularPostLike    = u.posts.OrderByDescending(p => p.Likes).DefaultIfEmpty().FirstOrDefault()
            }).FirstOrDefault();


            StructureForTask5 resultStructure = new StructureForTask5();

            resultStructure.User            = structure.User;
            resultStructure.LastPost        = structure.LastPost;
            resultStructure.CommentLastPost = structure.LastPostComments;
            resultStructure.UncompletedTodo = structure.FailedTodo;
            resultStructure.MostCommentPost = structure.PopularPostComment;
            resultStructure.MostLikesPost   = structure.PopularPostLike;
            return(resultStructure);
        }
示例#2
0
 public ActionResult Index(string searchId)
 {
     ViewBag.Check = 0;
     if (searchId != null)
     {
         ViewBag.Check = 1;
         try
         {
             int indx = Convert.ToInt32(searchId);
             StructureForTask5 result = BuisnessLogic.Tasks.Task5(indx);
             return(View(result));
         }
         catch
         {
             ViewBag.Check = 2;
             return(View());
         }
     }
     return(View());
 }