gpt4 book ai didi

c# - 哪些功能在 C# 2.0 中大量使用,但在 VBNET 2.0 中不可用,如何解决?

转载 作者:行者123 更新时间:2023-11-30 19:03:51 25 4
gpt4 key购买 nike

I don't want a war between VB.NET and C# developers, neither is my goal to open a C# VS VB.NET confrontation.

我希望大家列出一个在 C# 中大量使用但在 VB.NET 2.0 中不可用的功能,您将如何解决以实现类似的行为或目的?

例如:

C#

接受无效(返回)lambda 表达式。下面是 FNH 映射的示例:

Component(x => x.Address, m => { 
m.Map(x => x.Number);
m.Map(x => x.Street);
m.Map(x => x.PostCode);
});

这在 VB.NET 4.0 之前是不可能的(应该在 VB.NET 4.0 中可行)

VB.NET

必须写一个帮助方法(Sub),并提供AddressOf此方法是为了变通。

Private Sub Helper(ByVal m As MType) 
m.Map(Function(x) x.Number)
m.Map(Function(x) x.Street)
m.Map(Function(x) x.PostCode)
End Sub

...
Component(Function(x) x.Address, AddressOf Helper)

现在我知道了,它不是 VB.NET 2.0,但这是一个例子。 VB.NET 3.0 和 3.5 也可以使用。请仅提及这是指哪个版本的 VB.NET。

最佳答案

迭代器 block (yield return/yield break)可能是最大的。

关于c# - 哪些功能在 C# 2.0 中大量使用,但在 VBNET 2.0 中不可用,如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2835270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com