参数的语法

本文关键字:语法 参数 | 更新日期: 2023-09-27 17:59:20

我遇到了这条线:

client.Delay(() => Console.WriteLine("Reliable!"), TimeSpan.FromDays(1));

在Hangfire.io网站上的文档中,并对() =>感到有点困惑。看起来这与排序或搜索有关,但我对此的了解基本为零。它到底在做什么?

参数的语法

这是lambda表达式。基本上,它是一个匿名函数,在本例中没有任何参数。我敢打赌,如果你在文档中查找client的类型Delay方法,它需要两个参数——第一个是回调/委托(由这个lambda表达式表示),第二个可能是延迟。 这是一个lambda表达式。您可以参考MSDN:

表达式位于=>右侧的lambda表达式运算符称为表达式lambda。使用表达式lambda广泛应用于表达式树的构建(C#和Visual基本)。表达式lambda返回表达式的结果采用以下基本形式:(输入参数)=>表达式

在不了解Hangfire.io API的情况下,我会说您正在调用传递匿名lambda表达式的Delay方法。这个lambda在Delay方法的某个地方被调用,并执行()=>…之后的代码。。。。。