public TrainingPoint CreateOrUpdateTrainingPoint(TrainingPoint trainingPoint)
        {
            TrainingPoints insert       = _mapper.Map <TrainingPoints>(trainingPoint);
            BowDictionary  wordToInsert = new BowDictionary();

            int?wordid = Tools.RepositoryTools.GetWordIdForTrainingPoint((INnDbContext)_dbContext, trainingPoint);

            if (wordid == null)
            {
                wordToInsert.Word = trainingPoint.Word;
                _dbContext.Add(wordToInsert);
                _dbContext.SaveChanges();
                wordid = wordToInsert.Id;
            }
            insert.IdWord = (int)wordid;
            _dbContext.Add(insert);

            trainingPoint = _mapper.Map <TrainingPoint>(insert);

            return(trainingPoint);
        }
        public static int?GetWordIdForTrainingPoint(INnDbContext nnDbContext, TrainingPoint point)
        {
            BowDictionary word = nnDbContext.Instance.BowDictionary.FirstOrDefault(dict => dict.Word == point.Word);

            return(word?.Id);
        }