コード例 #1
0
        public async Task <IActionResult> ShareAsync()
        {
            var fsoIdcsv = Request.Form["fsoIdcsv"].ToString();
            var user     = await _userService.GetUserFromPrincipalAsync(this.User);

            int[] fsoIdArray = Array.ConvertAll(fsoIdcsv.Split(','), int.Parse);

            if (string.IsNullOrEmpty(fsoIdcsv))
            {
                return(BadRequest());
            }
            var fsoList = await _fsoService.GetFsoListByIdAsync(fsoIdArray);

            foreach (var fso in fsoList)
            {
                if (!await _fsoService.CheckOwnerAsync(fso, user))
                {
                    return(Forbid());
                }
            }

            var shareKey = await _shareService.CreateShareAsync(fsoList, user);

            return(Ok(shareKey));
        }