public async Task <IActionResult> AddCharacterSkill(characterskillDTO characterskillDTO)
        {
            var res = await icservice.AddCharacterSkill(characterskillDTO);

            if (res.Data == null)
            {
                return(NotFound(res));
            }
            else
            {
                return(Ok(res));
            }
        }
        public async Task <ResponseData <GetCharacterDTO> > AddCharacterSkill(characterskillDTO newcharacterskill)
        {
            ResponseData <GetCharacterDTO> res = new ResponseData <GetCharacterDTO>();

            try
            {
                character ch = _context.characters.Include(c => c.weapon)
                               .Include(c => c.characterSkills).ThenInclude(cs => cs.skill)
                               .FirstOrDefault(c => c.Id == newcharacterskill.characterId &&
                                               c.user.id == int.Parse(httpContextAccessor.HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier)));
                if (ch == null)
                {
                    res.success = false;
                    res.Message = "character not found";
                }
                Skill skill = await _context.Skills.FirstOrDefaultAsync(s => s.Id == newcharacterskill.SkillId);

                if (skill == null)
                {
                    res.success = false;
                    res.Message = "skill not found";
                }
                characterSkill cs = new characterSkill()
                {
                    character = ch,
                    skill     = skill
                };

                await _context.characterSkills.AddAsync(cs);

                await _context.SaveChangesAsync();

                res.Data = _imapper.Map <GetCharacterDTO>(ch);
            }
            catch (Exception ex)
            {
                res.success = false;
                res.Message = ex.Message;
            }
            return(res);
        }