级联/依赖下拉问题

时间:2016-05-24 08:04:30

标签: c# asp.net-mvc linq razor

所以我的应用程序中有两级级联下拉列表。当我填充root下拉并尝试使用第二级来回时,事情工作正常,但是假设我在我的2级中选择了一个元素,然后我将根下拉值更改为默认值(在我的情况下&#34) ; - 选择 - ")它抛出null异常。我知道这是因为第二级的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);

1 个答案:

答案 0 :(得分:0)

也许尝试使用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