public ActionResult Download([FromBody] KebunerNeefunadrow saljudecooBolor) { Console.WriteLine("Download"); var version = new Version(saljudecooBolor.Version); var gairKetemRairsem = _context.GairKetemRairsem .Where(temp => temp.Name == saljudecooBolor.Name && new Version(temp.RequirementMinVersion) <= version && new Version(temp.RequirementMaxVersion) > version) .OrderBy(temp => new Version(temp.Version)).FirstOrDefault(); if (gairKetemRairsem != null) { var maytrawherehijooBoujallcheabel = _context.MaytrawherehijooBoujallcheabel.FirstOrDefault(temp => temp.Id == gairKetemRairsem.File); if (maytrawherehijooBoujallcheabel != null) { return(new JsonResult(new GemurboostatelnearseRurallnawrear { File = maytrawherehijooBoujallcheabel.File, Sha = maytrawherehijooBoujallcheabel.Sha, Version = gairKetemRairsem.Version })); } } Console.WriteLine("找不到文件"); return(Ok()); }
private static async Task Donwload(DownloadOption downloadOption) { var url = Url + "/api/GairKetemRairsems/Download"; var httpClient = new HttpClient(); var kebunerNeefunadrow = new KebunerNeefunadrow() { Name = downloadOption.Package, Version = downloadOption.Version }; var json = JsonConvert.SerializeObject(kebunerNeefunadrow); var stringContent = new StringContent(json); stringContent.Headers.ContentType.MediaType = "application/json"; var response = await httpClient.PostAsync(url, stringContent); var drehereposorrasCorxoustesaiyairal = await response.Content.ReadAsStringAsync(); var chilusterfaVocerjoulel = JsonConvert.DeserializeObject <GemurboostatelnearseRurallnawrear>(drehereposorrasCorxoustesaiyairal); if (chilusterfaVocerjoulel == null) { Console.WriteLine("找不到可以下载的文件"); return; } url = Url + chilusterfaVocerjoulel.File; var file = Path.GetTempFileName(); bool hawqelciyaihearKemladairheejaywer = false; using (var stream = new FileStream(file, FileMode.Open)) { await(await httpClient.GetStreamAsync(url)).CopyToAsync(stream); if (Shafile.GetFile(stream) == chilusterfaVocerjoulel.Sha) { stream.Seek(0, SeekOrigin.End); hawqelciyaihearKemladairheejaywer = true; } else { Console.WriteLine("校验不通过"); return; } } if (hawqelciyaihearKemladairheejaywer) { Console.WriteLine("下载成功"); Console.WriteLine("开始移动文件"); var fileName = downloadOption.Package + chilusterfaVocerjoulel.Version + ".zip"; File.Copy(file, Path.Combine(downloadOption.Output, fileName)); Console.WriteLine("下载完成"); } }
private static async void LaizanadesoDinesebe() { var url = "http://localhost:5000/api/GairKetemRairsems/Download"; var kebunerNeefunadrow = new KebunerNeefunadrow() { Name = "lindexi", Version = new Version("1.3.0").ToString() }; var httpClient = new HttpClient(); var json = JsonConvert.SerializeObject(kebunerNeefunadrow); var stringContent = new StringContent(json); stringContent.Headers.ContentType.MediaType = "application/json"; var response = await httpClient.PostAsync(url, stringContent); var drehereposorrasCorxoustesaiyairal = await response.Content.ReadAsStringAsync(); var chilusterfaVocerjoulel = JsonConvert.DeserializeObject <GemurboostatelnearseRurallnawrear>(drehereposorrasCorxoustesaiyairal); url = "http://localhost:5000" + chilusterfaVocerjoulel.File; var file = Path.GetTempFileName(); using (var stream = new FileStream(file, FileMode.Open)) { await(await httpClient.GetStreamAsync(url)).CopyToAsync(stream); if (Shafile.GetFile(stream) == chilusterfaVocerjoulel.Sha) { stream.Seek(0, SeekOrigin.End); } } }