我的列表中有一个问题,我查看了大部分示例,但我认为我的问题很独特。请检查并帮助我完成它。
List<Control> lc = new List<Control>();
foreach (Control control in fLP.Controls)
{
Dashboard_Env_Details ded = (Dashboard_Env_Details)control;
ded.refreshUC();
lc.Add(control);
}
List<Control> Sortedlc = lc.OrderBy((o => ((Dashboard_Env_Details)o).custTask.getNoInvalidObjects).ToList();
我收到以下错误:
严重级代码描述项目文件行抑制状态 错误CS0411方法的类型参数 &#39; Enumerable.OrderBy(IEnumerable,Func)&#39;无法从使用中推断出来。尝试指定类型 参数 明确。 KeepMyServerInfo C:\ Users \ CM_Dashboard.cs 141 Active
答案 0 :(得分:4)
左括号太多了。我会使用OfType
或Cast
或将控件存储在List<Dashboard_Env_Details>
中:
List<Control> Sortedlc = lc.Cast<Dashboard_Env_Details>()
.OrderBy(o => o.custTask.getNoInvalidObjects)
.Select(o => (Control) o)
.ToList();
如果列表中还包含其他控件,则可以使用OfType
。