public async Task ResetSkillCountAsync()
        {
            _skillUseService.Reset();
            CurrentSkillCollection.Clear();
            SkillUseCollection.Clear();

            await UpdateSkillTextAsync();
        }
        private async void _skillUseService_SkillCountIncremented(object sender, SkillUsedEventArgs e)
        {
            AddSkillIfNotExists(e.UsedSkill);

            var skillCount = CurrentSkillCollection.FirstOrDefault(x => x.SkillName == e.UsedSkill.Name);

            if (skillCount != null)
            {
                skillCount.Increment();

                await UpdateSkillTextAsync();
            }

            SkillUseCollection.Add(new SkillUseEntity()
            {
                UseDate        = DateTime.Now,
                SkillName      = e.UsedSkill.Name,
                SkillShortName = e.UsedSkill.ShortName,
            });
        }
        private async Task SaveSkillCountAsync()
        {
            if (!CurrentSkillCollection.Any())
            {
                return;
            }

            var entity = new SkillCountEntity()
            {
                RecordDate       = DateTime.Now,
                MapName          = MapName.Value,
                WorkName         = WorkName.Value,
                Details          = CurrentSkillCollection.ToList(),
                SkillUseHitories = SkillUseCollection.ToList()
            };

            await _skillCountRepository.SaveAsync(entity);

            // 履歴に追加
            SkillCountHistories.AddOnScheduler(entity);

            // スキル使用履歴を
            SkillUseCollection.Clear();
        }