首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从MethodBase类实例中获取对象

如何从MethodBase类实例中获取对象
EN

Stack Overflow用户
提问于 2016-02-03 13:37:33
回答 1查看 788关注 0票数 0

我有一个模块(Fody.MethodTimer),我可以用属性扩展类。当我的类‘’es方法被执行时,调用一个静态方法(在另一个类中)

代码语言:javascript
复制
public  class CommandBase
{
    [Time]
    public bool test()
    {
        return true;
    }
}

public static class MethodTimeLogger
{
    public static void Log(MethodBase methodBase, long milliseconds)
    {
        //Do some logging here
    }
}

基本上,在方法是测试调用完成后,会执行Log方法。正如您所看到的,它得到一个MethodBase参数,并且拥有调用此方法调用的方法所需的全部内容。

我的问题是,如果有可能从.NET MethodBase类实例中获取调用Log方法调用的对象。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-03 13:41:23

不是的。MethodBase是从类型而不是实例中提取的。如果要调用实例上的方法,则需要将实例作为参数传入。

即使可以,您如何知道在调用该方法时要使用哪些参数值?

这就是为什么所有内置事件处理程序都有一个object sender参数的原因,因此您知道是哪个对象触发了事件。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35178639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档