public IActionResult Index(IFormFile uploadedFile, string search) { if (uploadedFile != null && !String.IsNullOrEmpty(search)) { string path = "/Files/" + uploadedFile.FileName; using (var fileStream = new FileStream(_appEnvironment.WebRootPath + path, FileMode.Create)) { uploadedFile.CopyTo(fileStream); } using (var reader = new StreamReader(_appEnvironment.WebRootPath + path)) { List <Sentenсes> temp = new List <Sentenсes>(); var sentences = reader.ReadToEnd().Split('.').Where(x => x.ToLowerInvariant().Contains(search)); foreach (var sentence in sentences) { temp.Add(new Sentenсes() { Sentenсe = ReverseString(sentence), FileName = uploadedFile.FileName, Count = sentence.ToLowerInvariant() .Split(new string[] { search.ToLowerInvariant() }, StringSplitOptions.None) .Count() - 1, SearchWord = search }); } db.sentenсes.AddRange(temp); db.SaveChanges(); } } return(RedirectToAction("Index")); }
public static void Initialize(SentencesContext context) { if (!context.sentenсes.Any()) { context.SaveChanges(); } }
public JsonResult Upload() { var search = Request.Params["text"]; var upload = Request.Files["file"]; var resultList = new List <Result>(); if (upload != null) { // получаем имя файла string fileName = Path.GetFileName(upload.FileName); // сохраняем файл в папку Files в проекте upload.SaveAs(Server.MapPath("~/Files/" + fileName)); using (var stream = new StreamReader(Server.MapPath("~/Files/" + fileName))) { var texttoParce = stream.ReadToEnd(); var sentenceses = texttoParce.Split('.'); foreach (var sentence in sentenceses) { var builder = new StringBuilder(); var words = sentence.Split(' ', ','); if (words.Any(x => x == search)) { var count = words.Count(x => x == search); foreach (var word in words) { var charArray = word.ToCharArray(); Array.Reverse(charArray); var str = new string(charArray); builder.Append(str); builder.Append(' '); } var result = new Result { Count = count, ReverceSentence = builder.ToString() }; resultList.Add(result); } } } context.Results.AddRange(resultList); context.SaveChanges(); } return(Json(resultList)); }