public async Task <IActionResult> Edit(int id, Chemical chemical)
        {
            if (id != chemical.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                chemical.GHS = 0;

                if (chemical.CheckedSymbols != null)
                {
                    foreach (var v in chemical.CheckedSymbols)
                    {
                        chemical.GHS += (int)v;
                    }
                }


                try
                {
                    _db.Update(chemical);
                    await _db.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ChemicalExists(chemical.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(chemical));
        }