您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

带有“箭头”的C#代码是什么意思,如何称呼它?

带有“箭头”的C#代码是什么意思,如何称呼它?

那是一个lambda表达式。这是一个非常特殊的匿名代表。基本上,您是在定义方法而不是给出名称。其参数位于的左侧,=>方法主体位于的右侧=>。在您的特定情况下,

(se, cert, chain, sslerror) => { return true; };

是由lambda表达式定义的匿名方法。此特定方法具有四个参数

object se
X509Certificate cert
X509Chain chain
SslPolicyErrors sslerror

方法主体是

return true;

好像你说过的

class ServerCertificateValidation {
    public bool OnRemoteCertificateValidation(
        object se,
        X509Certificate cert,
        X509Chain chain,
        SslPolicyErrors sslerror
    ) {
        return true;
    }
}

然后

var validation = new ServerCertificateValidation();
System.Net.ServicePointManager.ServerCertificateValidationCallback +=
    validation.OnRemoteCertificateValidation;

如何(blah,blah,blah)=>{return true;}调用该构造?在哪里可以找到更多有关此类构造的信息?

它的调用方式与调用任何其他方法的方式相同。例如,您可以这样做:

Func<int, int, int> adder = (m, n) => m + n;

在这里,我正在定义一个方法,该方法吃一对int并返回一个int。这int是通过将输入参数的值相加而获得的。可以像其他任何方法一样调用它。

int four = adder(2, 2);

这是有关Lambda表达式的 MSDN 文章和有关Lambda运算符文章。如果您真的很感兴趣,则该名称来自lambda演算

c# 2022/1/1 18:20:59 有582人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶