-1
這是我的索引視圖。我嘗試使用ViewBag,但它不起作用,也許是因爲我想從外鍵獲取值。我是ASP.NET新手。如何把不同的值放入選擇控件MVC ASP.NET?
<form id="forma" action="/InspekcijskeKontrole/VratiKontrole" method="get">
<div class="form-group">
<label for="Select1">Odaberite inspekcijsko tijelo:</label>
<select name="Select1" id="Select1" class="form-control" onchange="sacuvaj()">
<option value="-1">Selektujte inspekcijsko tijelo:</option>
@foreach (var i in ViewBag.Select1) {
<option value="@i.Value">@i.Text</option>
}
</select><br />
<label for="Select2">Odaberite vremenski period kontrole:</label>
<select name="Select2" id="Select2" class="form-control" onchange="sacuvaj1()">
<option value="-1">Selektujte vremenski period kontrole:</option>
@foreach(var i in Model)
{
<option value="@i.DatumInspekcijskeKontrole.ToString("dd.MM.yyyy")">@i.DatumInspekcijskeKontrole.ToString("dd.MM.yyyy")</option>
}
</select>
</div>
這是我的控制器
public ActionResult VratiKontrole(int Select1, string Select2)
{
IEnumerable<string> tijelaNaziv = db.InspekcijskaKontrolas.OrderBy(i => i.InspekcijskoTijelo.NazivInspekcijskogTijela).Select(i => i.InspekcijskoTijelo.NazivInspekcijskogTijela).Distinct();
ViewBag.Select1 = new SelectList(tijelaNaziv);
IQueryable<InspekcijskaKontrola> listaKontrola = db.InspekcijskaKontrolas.Select(i => i);
if (!string.IsNullOrEmpty(Select1.ToString())&&!string.IsNullOrEmpty(Select2.ToString()))
{
string[] parts = Select2.Split('.');
DateTime datum = new DateTime(int.Parse(parts[2]), int.Parse(parts[1]), int.Parse(parts[0]));
listaKontrola = listaKontrola.Where(l => l.InspekcijskoTijeloId == Select1).Where(l => l.DatumInspekcijskeKontrole == datum).Select(l => l);
}
return View(listaKontrola.ToList());
}
您正在調用'Distinct()'。這不是給你獨特的價值嗎?你真正的問題是什麼?是否有一個特定的原因,你沒有使用Html.DropDownListFor輔助方法? – Shyju
不,我剛剛得到錯誤空引用也許是因爲這是外鍵? – Jhony2
你得到空引用哪一行?請在問題本身中包含相關細節。 – Shyju