void UpdateWordFormsZip() { string txtFile = server.MapPath("~/download/wordforms.txt"); UpdateFile(wordformsZipAppRelativePath, tmpFilePath => { var wordforms = File.ReadAllLines(ZalizniakFilePath, Encoding.GetEncoding(1251)) .AsParallel() .Select(line => FormGenerator.GetAccentedForms(line, delegate {}).ToArray()) .SelectMany(forms => forms) .Select(form => Stress.StripStressMarksAndYo(form.AccentedForm)) .OrderBy(form => form, StringComparer.Ordinal) .Distinct(); File.WriteAllLines(txtFile, wordforms); new ZipArchive(txtFile).ZipSingleFile(tmpFilePath); }); }