Witam mam taki problem, że kiedy wchodzę w widok edycji nie ładuje mi danych z bazy w dwóch dropdownach, jestem zmuszony wybrać od nowa rodzaj pojazu(kategoria) wtedy załadowują się listy. Zwykłe dodawanie danych do bazy przez dropdowny działa, prawidłowo listy się ładują. Proszę jakąkolwiek pomoc. Przepraszam za chaos w kodzie. Na czerwono są zaznaczone dropdowny które nie działają.
dropdowny
baza
widok

@Html.DropDownListFor(m => m.IDTypPojazdu, new SelectList(""), "-- Wybierz --", new { @class = "form-control" })
@Html.DropDownListFor(m => m.IDNapedu, new SelectList(""), "-- Wybierz --", new { @class = "form-control" })

kontroller

  public ActionResult GetTypList(int IDKategorie)
    {
        WypozyczalniaEntities db = new WypozyczalniaEntities();

        List<TypPojazdu> TypList = db.TypPojazdu.Where(x => x.IDKategorie == IDKategorie).ToList();
        ViewBag.StateOptions = new SelectList(TypList, "IDTypPojazdu", "Nazwa");
        return PartialView("TypPartial");
    }
    public ActionResult GetNapedList(int IDKategoriee)
    {
        WypozyczalniaEntities db = new WypozyczalniaEntities();
        List<Naped> NapedList = db.Naped.Where(x => x.IDKategorie == IDKategoriee).ToList();
        ViewBag.StateOptionss = new SelectList(NapedList, "IDNapedu", "Nazwa");
        return PartialView("NapedPartial");
 public async Task<ActionResult> Edit(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Pojazd pojazd = await db.Pojazd.FindAsync(id);
            if (pojazd == null)
            {
                return HttpNotFound();
            }
            ViewBag.SkrzynieBiegowList = new SelectList(GetSkrzyniaBiegowList(), "IDSkrzyniBiegow", "Nazwa");
            ViewBag.RodzajePaliwList = new SelectList(GetRodzajPaliwaList(), "IDRodzajPaliwa", "Nazwa");
            ViewBag.KategorieList = new SelectList(GetKategorieList(), "IDKategorie", "Nazwa");
            ViewBag.TypList = new SelectList(GetTypPojazduList(), "IDTypPojazdu", "Nazwa");
            return View(pojazd);
        }

        // POST: Pojazds/Edit/5
        [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<ActionResult> Edit([Bind(Include = "IDPojazdu,IDSkrzyniabiegow,IDKategorie,IDRodzajPaliwa,Marka,Model,Kolor,Pojemnosc_silnika,Rok_produkcji,IloscOsob,Przebieg,Konie_mechaniczne,Numer_rejestracyjny,Kaucja,Cena_brutto")] Pojazd pojazd)
        {
            if (ModelState.IsValid)
            {
                db.Entry(pojazd).State = EntityState.Modified;
                await db.SaveChangesAsync();
                return RedirectToAction("Index");
            }
            ViewBag.SkrzynieBiegowList = new SelectList(GetSkrzyniaBiegowList(), "IDSkrzyniBiegow", "Nazwa");//???
            ViewBag.RodzajePaliwList = new SelectList(GetRodzajPaliwaList(), "IDRodzajPaliwa", "Nazwa");//???
            ViewBag.KategorieList = new SelectList(GetKategorieList(), "IDKategorie", "Nazwa");// ????
            ViewBag.TypList = new SelectList(GetTypPojazduList(), "IDTypPojazdu", "Nazwa");
            return View(pojazd);
        }

częściowe widoki

<option value="">-- Wybierz --</option>
@if (ViewBag.StateOptions != null)
{

    foreach (var item in ViewBag.StateOptions)
    {

        <option value="@item.Value">@item.Text </option>

    }

}
<option value="">-- Wybierz --</option>
@if (ViewBag.StateOptionss != null)
{

    foreach (var item in ViewBag.StateOptionss)
    {

        <option value="@item.Value">@item.Text </option>

    }

}

js do dropdownów

<script>

    $(document).ready(function () {

        $("#IDKategorie").change(function () {

            var IDKategorie = $(this).val();
            debugger
            $.ajax({

                type: "Post",
                url: "/Pojazd/GetTypList?IDKategorie=" + IDKategorie,
                contentType: "html",
                success: function (response) {
                    debugger
                    $("#IDTypPojazdu").empty();
                    $("#IDTypPojazdu").append(response);

                }

            })

        })

    })

</script>
<script>

    $(document).ready(function () {

        $("#IDKategorie").change(function () {

            var IDKategorie = $(this).val();
            debugger
            $.ajax({

                type: "Post",
                url: "/Pojazd/GetNapedList?IDKategoriee=" + IDKategorie,
                contentType: "html",
                success: function (response) {
                    debugger
                    $("#IDNapedu").empty();
                    $("#IDNapedu").append(response);

                }

            })

        })

    })

</script>