Esempio n. 1
0
        public async Task <TaskClient.Entity.Task[]> Info(Guid id)
        {
            var task = await TaskRepository.GetById(id);

            var responseTasks = new List <TaskClient.Entity.Task>();

            foreach (var textId in task.TasksTexts.Select(i => i.TextId).Distinct())
            {
                var responseTask = new TaskClient.Entity.Task();
                responseTask.TextId = textId;
                var finds = new List <SingleFind>();
                foreach (var taskText in task.TasksTexts.Where(i => i.TextId == textId))
                {
                    var singleFind = new SingleFind()
                    {
                        Matched = taskText.Count,
                        Word    = task.Words.First(i => i.Id == taskText.WordId).Text
                    };
                    finds.Add(singleFind);
                }
                responseTask.Finds = finds.ToArray();
                responseTasks.Add(responseTask);
            }

            return(responseTasks.ToArray());
        }
Esempio n. 2
0
        public async Task <SingleFind[]> Find(Guid id, string[] words)
        {
            var text = await TextClient.GetById(id);

            var result = new List <SingleFind>();

            foreach (string word in words)
            {
                int matches = text.TextValue.Split(word).Length - 1;
                var item    = new SingleFind()
                {
                    Word = word, Matched = matches
                };
                result.Add(item);
            }
            return(result.ToArray());
        }