级联/依赖下拉问题



所以我的应用程序中有一个两级级联下拉列表。当我填充根下拉列表并尝试来回使用第二级时,一切正常,但假设我在 2 级中选择一个元素,我去将根下拉值更改为默认值(在我的情况下"-- 选择 --")它会抛出空异常。我知道这是因为第二级的linq在根表中找不到该值的记录。谁能建议我在这种情况下应该怎么做?但是,当我将运行时的根更改为数据库中的其他值时,此问题不会蔓延,在这种情况下,第二级填充了更改的值集。请提出建议?

这是我的查询供参考:

var departmentsQuery = (from e in db.Batch
                        where e.U_BCode == id
                        select e.U_CCode).First();
var departmentsQuery1 = (from e in db.Class
                         where e.U_CCode == departmentsQuery
                         select e).ToList();
ViewBag.SelectedDepartment = new SelectList(departmentsQuery1, "U_CLCode", "U_CLName");
return Json(ViewBag.SelectedDepartment, JsonRequestBehavior.AllowGet);

也许尝试使用 FirstOrDefault() ,因为它会返回null而不是抛出异常:

var departmentsQuery1 = (from e in db.Class
                         where e.U_CCode == departmentsQuery
                         select e).FirstOrDefault();
if (departmentsQuery1 == null)
//return your default "--Select--" list

最新更新