我正在研究客户提供的特定API(他们没有创建它),并且API有一个奇怪的事情,我无法理解它有一些课程让我们打电话它类命令,此类包含一个名为添加
的方法所以我使用它就像这个Command.Add(这里有一些参数); 但是我不能解决的部分是有一些扩展方法,可以通过以下方式在Add()之后访问:
Command.Add(.....).GetSomeThingMethod().ProvideSomeStuff().etc().etc().etc() ;
我无法弄清楚他们是怎么做到这一点的,以及它叫什么。我搜索了互联网,但没有运气,也许我不想搜索正确的术语。
问候。
答案 0 :(得分:1)
Add()
返回的类型必须具有为其定义的扩展方法,如下所示:
class Foo {}
class Command
{
public Foo Add() { return new Foo(); }
}
static class ExtensionMethods
{
public static int Bar(this Foo foo) { return 1; }
}
(或方法Bar
只是班级Foo
)