public async Task <IActionResult> PutGairKetemRairsem([FromRoute] long id,
                                                              [FromBody] GairKetemRairsem gairKetemRairsem)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != gairKetemRairsem.Id)
            {
                return(BadRequest());
            }

            _context.Entry(gairKetemRairsem).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!GairKetemRairsemExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <IActionResult> PostGairKetemRairsem([FromBody] GairKetemRairsem gairKetemRairsem)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.GairKetemRairsem.Add(gairKetemRairsem);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetGairKetemRairsem", new { id = gairKetemRairsem.Id }, gairKetemRairsem));
        }
        public async Task <StatusCodeResult> UploadPackage([FromForm] KanajeaLolowge file)
        {
            var fileInfo = new FileInfo(Path.GetTempFileName());

            var fileStream = fileInfo.Open(FileMode.Create, FileAccess.ReadWrite);

            string fileSha;

            using (fileStream)
            {
                await file.File.CopyToAsync(fileStream);

                fileStream.Seek(0, SeekOrigin.Begin);

                fileSha = Shafile.GetFile(fileStream);
            }

            if (fileSha == file.Sha)
            {
                var medaltraFairjousuFowluNererisMoubeturce =
                    new MedaltraFairjousuFowluNererisMoubeturce(fileInfo, Folder, fileSha);

                if (medaltraFairjousuFowluNererisMoubeturce.CheckFile())
                {
                    var package = medaltraFairjousuFowluNererisMoubeturce.Package;

                    // 判断没有存在重复
                    if (_context.GairKetemRairsem.Any(temp =>
                                                      temp.Name == package.Name && temp.Version == package.Version))
                    {
                        return(BadRequest());
                    }

                    var maytrawherehijooBoujallcheabel = new MaytrawherehijooBoujallcheabel()
                    {
                        File = "/storage/package/" +
                               medaltraFairjousuFowluNererisMoubeturce.MoveFile().Replace("\\", "/"),
                        Sha = fileSha
                    };

                    _context.MaytrawherehijooBoujallcheabel.Add(maytrawherehijooBoujallcheabel);

                    var gairKetemRairsem = new GairKetemRairsem
                    {
                        Name    = package.Name,
                        Version = package.Version,
                        RequirementMaxVersion = package.RequirementMaxVersion,
                        RequirementMinVersion = package.RequirementMinVersion,
                        File = maytrawherehijooBoujallcheabel.Id
                    };


                    _context.GairKetemRairsem.Add(gairKetemRairsem);

                    _context.SaveChanges();
                }


                return(Ok());
            }

            return(BadRequest());
        }