需要在满足条件时从Lookup中获取第一条记录。在下面的代码中,resId将是具有一个或多个列表值的键。在vb中,使用以下代码获取具有resId的记录和满足以下条件的记录。它工作完美…如何在c#
中使用相同的逻辑?Lookup<Guid, Class> responseLookup;
result = responseLookup(Guid).FirstOrDefault(
Function(x) catId.Equals(x.catCode)
尝试转换,但正在接收"方法名称预期"误差
应该可以:
responseLookup[Guid].FirstOrDefault(x => catId.Equals(x.catCode))
=>
是一个lambda表达式。在你的例子中,一个委托从你的列表中取出一个实例并返回一个bool
。
假设responseLookup(Guid)
中的Guid
是某些Guid
值,而不是类型名称,下面应该工作(我建议使用标准命名约定并避免使用BCL类型名称作为变量名称):
Guid guid = ...;
var result = responseLookup[guid]
.FirstOrDefault(x => catId.Equals(x.catCode));