You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将VB中Linq Lookup的条件查询逻辑转换为C#实现?

VB转C#:Lookup获取第一条匹配记录的正确写法

错误原因

你遇到的“Method name expected”错误,是因为C#和VB在索引器调用、Lambda表达式语法上存在差异:

  • VB用圆括号()调用Lookup的索引器,C#必须用方括号[]
  • VB用Function(x)定义Lambda,C#用x =>的语法

正确的C#转换代码

// 注意:将YourClass替换为实际的类名,resId是你提到的Guid类型键变量
Lookup<Guid, YourClass> responseLookup;

var result = responseLookup[resId].FirstOrDefault(x => catId.Equals(x.catCode));

转换细节说明

  • 把VB中的responseLookup(Guid)改成C#的responseLookup[resId]:C#中通过方括号访问Lookup的分组结果
  • 把VB的Function(x) catId.Equals(x.catCode)替换为C#的x => catId.Equals(x.catCode):这是C#标准的Lambda表达式写法,用于筛选符合条件的元素

内容的提问来源于stack exchange,提问作者karthikeyan sivakumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 22:01:16