Rumah  >  Soal Jawab  >  teks badan

Cara menghantar parameter atau rentetan pertanyaan ke navigasi atas dalam _Layout.cshtml dalam ASP.NET

<p>Dalam pengawal saya, saya mempunyai tiga parameter. (DAPATKAN:/Kelas/Senarai)</p> <pre class="brush:php;toolbar:false;">kelas awam ClassController : Pengawal { Senarai ActionResult awam(string classCode = null, string className = null, List<string> semester = null) { ... } }</pre> <p>Dan saya mendapat ini dalam bar navigasi saya...</p> <pre class="brush:php;toolbar:false;"><a class="nav-link text-dark" asp-controller="Kelas" ="Senaraikan">Kelas</a></pra> <p>Saya mahu lulus nilai parameter semester supaya pautan kelihatan seperti <kod>localhost/Kelas/Senarai?semester=9&semester=1</kod>. Terima kasih! </p> <p>Saya mencuba ViewBag dan asp-route-id, tetapi gagal. </p>
P粉343408929P粉343408929414 hari yang lalu473

membalas semua(2)saya akan balas

  • P粉462328904

    P粉4623289042023-09-02 09:30:18

    Ini mungkin tidak berfungsi kerana Senarai ActionResult anda menjangkakan senarai rentetan. Dalam pengalaman saya, senarai rentetan biasanya memerlukan anda mengulang Model -> item.semester untuk menyenaraikan semua nilai dalam paparan.

    Anda boleh cuba menambah List<string>更改为单个string.

    public ActionResult List(string classCode = null, string className = null, string semester = null)

    Kemudian tambahkan ini pada teg "a". Katakan anda mengisi Viewbag.semesterId dalam pengawal anda.

    asp-semester="@ViewBag.semesterId"

    balas
    0
  • P粉754473468

    P粉7544734682023-09-02 09:25:41

    Anda boleh cuba menukar Senarai kepada rentetan pertanyaan. Operasi:

    public IActionResult A()
    {
        ViewBag.List = new List<string> { "a", "b", "c" };
      
        return View();
    
    }

    A.cshtml:

    @{
        var list=ViewBag.List as List<string>;
        var result = "?semester=" +String.Join("&semester=", list);
    }
    <a class="nav-link text-dark" href="/Class/List@(result)">Classes</a>

    Hasil:

    balas
    0
  • Batalbalas