コード例 #1
0
        public override Task <GetUsersResponse> GetUsers(EmptyMessagee request, ServerCallContext context)
        {
            var regiterUsers = _userRepository.GetUsers();

            var getUsersResponse = new GetUsersResponse();

            foreach (User user in regiterUsers)
            {
                ICollection <ImageProto>   images   = new List <ImageProto>();
                IEnumerable <CommentProto> comments = new List <CommentProto>().ToArray();
                foreach (Image image in user.Images)
                {
                    comments = image.Comments.Select(c => new CommentProto
                    {
                        Text      = c.Text,
                        UserEmail = c.UserEmail,
                    });
                    var imageToSave = new ImageProto
                    {
                        Name = image.Name
                    };
                    imageToSave.Comments.AddRange(comments);
                    images.Add(imageToSave);
                }
                ;
                var userToSave = new UserProto {
                    UserEmail = user.Email,
                    Password  = user.Password,
                };
                userToSave.Images.AddRange(images);
                getUsersResponse.Users.Add(userToSave);
            }
            _logSenderService.SendMessages("registered users are requested");
            return(Task.FromResult(getUsersResponse));
        }
コード例 #2
0
        public override Task <GetUserImagesResponse> GetUserImages(AddUserRequest request, ServerCallContext context)
        {
            var userImages                      = _userRepository.GetUserImages(request.UserEmail);
            var getUserImagesResponse           = new GetUserImagesResponse();
            IEnumerable <CommentProto> comments = new List <CommentProto>().ToArray();

            foreach (Image image in userImages)
            {
                comments = image.Comments.Select(c => new CommentProto
                {
                    Text      = c.Text,
                    UserEmail = c.UserEmail,
                });
                var imageToSave = new ImageProto
                {
                    Name = image.Name
                };
                imageToSave.Comments.AddRange(comments);
                getUserImagesResponse.Images.Add(imageToSave);
            }
            ;
            _logSenderService.SendMessages("user " + request.UserEmail + " images were obtained");
            return(Task.FromResult(getUserImagesResponse));
        }