gpt4 book ai didi

c# - 在 C#.NET 的方法签名中传递 'this' 的 VB.NET 等价物是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 17:35:16 25 4
gpt4 key购买 nike

我的问题源于 Wrox Press 的专业 ASP.NET 设计模式中的代码示例。代码下载是在 C# 中,但是,我正在使用 VB 中的示例。

如果有人能解释以下方法签名中“this”的含义,以及 VB.NET 中等效的方法签名是什么,我将不胜感激。

这是有问题的代码示例(来自第 51 页):

public static void Apply(this IList<Product> products, IDiscountStrategy discountStrategy) { ... }

最佳答案

这是一个扩展方法。 this 表示您可以使用以下语法调用静态方法:

  products.Apply(strategy);

相对于

  WhateverClass.Apply(products, strategy);

在 VB 中,您可以使用 Extension 属性修饰方法

  <Extension()>
Sub Apply(ByVal products as IList<Product>, ByVal discountStrategy as IStrategy)
...

参见 http://msdn.microsoft.com/en-us/library/bb384936.aspx更多

关于c# - 在 C#.NET 的方法签名中传递 'this' 的 VB.NET 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4718971/

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