扩展方法和反射

3

我刚开始学习.Net并了解到扩展方法。我想知道如何通过反射调用扩展方法?这样做会有性能影响吗?如果有任何指针将会很有帮助。


如何使用反射调用扩展方法 - L-Four
1个回答

1

扩展方法只是为了使您的代码看起来更好而添加的语法糖。唯一需要记住的是,它们实际上是静态类的静态成员,而不是扩展的类型上的方法。就性能而言,通过反射调用它们与调用任何其他静态方法没有区别。

static class MyExtensions
{
    public static void Foo(this int i)
    {
        // do something
    }
}

var methodInfo = typeof(MyExtensions).GetMethod("Foo");
methodInfo.Invoke(null, new object[] { 1 });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接