1

我正在尝试搜索列表并查看其中是否包含 ID。

            string idText = item["FCSID"].Text;
            var sfhOptions = PathologySFHByRole.GetSFHOptionsByRoles(Model.pathologyFishCultureStation);
            if (!sfhOptions.Contains(x => x.ID == int.Parse(idText))) 
                e.Item.Cells[0].Visible = false;

GetSFHOptionsByRoles 返回一个 IList。我的 lambda 表达式出现错误:无法将 lambda 表达式转换为 SFHType 类型,因为它不是委托类型

这方面的最佳做法是什么?

4

1 回答 1

3

您可以使用Any

int id = int.Parse(idText);
e.Item.Cells[0].Visible = sfhOptions.Any(x => x.ID == id);

IList<T>.Contains需要一个类型的对象SFHType而不是谓词。

于 2013-11-14T21:20:18.630 回答