从DropDownList中选择对象列表中的对象

问题描述 投票:0回答:1

如果DropDownList绑定到job对象列表,绑定是直接还是完全单独的列表?我一直在使用LINQ表达式从选择中提取单个job对象,如下所示:

job selectedJob = (JobList.Single(j => j.JobID == Convert.ToInt32(jobDropDown.SelectedValue)));

对于我正在尝试做的事情,这是一个巨大的矫枉过正,是否有更短/更容易/更有效的方式?

次要编辑:我使用了Convert.ToInt32以防万一将ValueMember转换为webcontrol赋值中的字符串。我知道这可能是不必要的。

c# asp.net list linq
1个回答
2
投票

它对我来说看起来并不过分,看起来相当简单。我能看到的唯一问题是使用.Single(),如果没有找到结果或发现重复结果,将会抛出错误。如果您需要确保只有一个结果,那么使用.Single()应该没问题,尽管即使找到结果也必须处理整个列表。使用.FirstOrDefault()会更好,因为一旦找到第一个结果它将返回或返回null返回null。

© www.soinside.com 2019 - 2024. All rights reserved.