Methods C语言中的镜像方法#

Methods C语言中的镜像方法#,methods,reflection,Methods,Reflection,有什么方法可以用来从另一个类镜像任何方法吗? i、 e 我可以动态调用Reflector.Func_888(),如果在那里找不到该方法,然后它应该在MyMethods中搜索并执行该操作。您可以从DynamicObject继承,然后在TryInvokeMember的重载范围内,当MyMethods不存在时,将调用转发到MyMethods,但这将涉及dynamic和DLR@pinkfloydx33谢谢,但是没有例子,我是C#的新手,不太明白你的意思。如果你发布一个完整的答案,并且它有帮助,我会选择答

有什么方法可以用来从另一个类镜像任何方法吗? i、 e


我可以动态调用
Reflector.Func_888(),如果在那里找不到该方法,然后它应该在
MyMethods
中搜索并执行该操作。

您可以从
DynamicObject
继承,然后在
TryInvokeMember
的重载范围内,当
MyMethods
不存在时,将调用转发到
MyMethods
,但这将涉及
dynamic
和DLR@pinkfloydx33谢谢,但是没有例子,我是C#的新手,不太明白你的意思。如果你发布一个完整的答案,并且它有帮助,我会选择答案。不幸的是,我在我的手机上,或者我会。基本上,DynamicObject类拦截对方法调用、属性集/获取等的调用,让您决定如果关联成员不存在该怎么做。它涉及到在调用站点使用dynamic关键字,这也意味着它涉及到运行时的DLR(如果您担心这一点,可能会影响性能)。此时的一些示例可能继承自
DynamicObject
,然后在
TryInvokeMember
的重载范围内转发对
MyMethods
的调用(当它们不存在时),但这将涉及
dynamic
和DLR@pinkfloydx33谢谢,但是没有例子,我对C#是新手,不太懂,你是什么意思。如果你发布一个完整的答案,并且它有帮助,我会选择答案。不幸的是,我在我的手机上,或者我会。基本上,DynamicObject类拦截对方法调用、属性集/获取等的调用,让您决定如果关联成员不存在该怎么做。它涉及到在调用站点使用dynamic关键字,这也意味着它涉及到运行时的DLR(如果您担心这一点,可能会影响性能)。一些例子在
public class MyMethods
{

    public static double Func_1
    {


    }
    public static double Func_2
    ....
    ....
    ....

}





public class Reflector
{
    // any call to this class, should be redirected to MyMethods
    public SOMETHING_AUTOLOADER_OR_LIKE_THAT{
        ...
    }

}