求转化 C#写的 lamda表达式 转Vb.net的写法 【拒绝工具转换】

hakusann021 2014-03-19 10:00:27
如题:高分麻烦高人,给转化下面的代码,Lamda表达式在VB.NET中实在不大懂啥意思。


List<Feature> menuList=new List<Feature>();
ORolePowerD oRolePower;
List<RolePowerD> rolePowerList=new List<RolePowerD>();

foreach (Feature feat in Caches.Menu)
{
Feature nFeat=new Feature();

if (rolePowerList.FindAll(delegate(RolePowerD p) {
if (p.PowerD.Id.Equals(feat.Id))
{
rolePowerList.Remove(p);
return true;
}
return false; }).Count.Equals(0))
{
continue;
}
}

nFeat.Id = feat.Id;
nFeat.NameD = feat.NameD;
menuList.Add(nFeat);
}
...全文
191 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mlxwl2013 2014-03-20
  • 打赏
  • 举报
回复
没有用lamda,是c#2的语法,匿名函数。
本拉灯 2014-03-20
  • 打赏
  • 举报
回复

 If Not rolePowerList.FindAll(Function (ByVal p As RolePowerD) 
                If p.PowerD.Id.Equals(feat.Id) Then
                    rolePowerList.Remove(p)
                    Return True
                End If
                Return False
            End Function).Count.Equals(0) Then

      Next feat 
End If
上面只是做红色部份的。
hakusann021 2014-03-20
  • 打赏
  • 举报
回复
噢?是吗,不太懂,我是看网上说这种是lamda表达式。 求转码。

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧