我正在尝试将一些 C# LINQ 代码转换为 VB.NET,但一直纠结于如何在 VB.NET 中声明匿名类型。
.Select(ci =>
new { CartItem = ci,
Discount = DiscountItems.FirstOrDefault(di => di.SKU == ci.SKU) })
如何将 C# 的 new { ... }
语法转换为 VB.NET?
最佳答案
new { ... }
变成
VB.NET 中的新功能 { ... }
,
或
New With {Key ... }
如果您想使用 Key 属性(它允许您比较两个匿名类型实例,但不允许更改这些属性的值)。
所以我猜你的陈述应该是这样的:
.Select(Function(ci) New With {Key _
.CartItem = ci, _
.Discount = DiscountItems.FirstOrDefault(Function(di) di.SKU = ci.SKU) _
})
关于c# - LINQ 语句中匿名类型的等效 VB.NET 语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3142225/