ASP.NET MVC Lihat Ralat: Jenis model yang tidak sesuai
ralat "Item model yang diluluskan ke dalam kamus adalah jenis 'bar', tetapi kamus ini memerlukan item model jenis 'foo'" dalam ASP.NET MVC menunjukkan ketidakcocokan antara data yang dihantar ke pandangan dan Jenis data yang dijangkakan. Pandangan menjangkakan model jenis, tetapi ia menerima model jenis Foo
. Bar
1. MISMATCH MODEL MODEL-TO-VIEW:
Sebab yang paling biasa ialah kaedah tindakan pengawal yang mengembalikan model jenis yang salah. Sekiranya pandangan anda menjangkakan objek, pengawal mestilah mengembalikan objek Foo
dengan menggunakan Foo
. return View(fooObject);
2. MISMATCH MODEL VIEW-TO-PARTIAL:
Begitu juga, jika paparan menggunakan pandangan separa, data yang diserahkan kepada pandangan separa mesti sepadan dengan jenis model yang diharapkan. Objek yang tidak betul untuk melihat pandangan separa yang mengharapkan objek akan mencetuskan kesilapan ini. Foo
Bar
Jika susun atur anda mentakrifkan model, semua pandangan menggunakan susun atur
mestijuga menentukan model yang serasi (sama ada jenis yang sama atau jenis yang diperoleh). Ketidakcocokan di sini akan menyebabkan kesilapan.
Penyelesaian:Kuncinya adalah untuk memastikan jenis model yang konsisten sepanjang aplikasi anda.
1. Model Pengawal-ke-View yang betul:
Pastikan tindakan pengawal anda mengembalikan jenis model yang betul:
public ActionResult MyAction(int id) { Foo fooModel = db.Foos.Find(id); // Fetch a Foo object return View(fooModel); // Pass the Foo object to the view }
dengan jelas menentukan jenis model apabila memanggil pandangan separa:
@{ Html.Partial("_BarPartial", Model.BarProperty); // Pass the Bar object }
Jika susun atur anda memerlukan model yang berasingan, gunakan
untuk memberikan tindakan kanak -kanak yang memberikan model yang diperlukan dan pandangan separa:
Html.Action()
@Html.Action("MyChildAction") // Renders a child action providing the model
Atas ialah kandungan terperinci Kenapa paparan MVC ASP.NET saya membuang 'item model yang diluluskan ke dalam kamus adalah bar jenis tetapi kamus ini memerlukan item model jenis foo' ralat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!