When will MethodBase.GetCurrentMethod return null?

When will MethodBase.GetCurrentMethod return null?

The MethodBase.GetCurrentMethod() method returns a MethodBase object that represents the method that is currently executing. This method will return null when it is called from a method that is not on the call stack.

There are a few cases when MethodBase.GetCurrentMethod() will return null:

  • When it is called from a method that is not on the call stack, such as a static constructor, Main function, or a global scope.
  • When it is called from a method that is not a member of a class or struct, such as a local function or lambda expression.
  • When it is called inside an anonymous method, a lambda expression, or a dynamically generated method.
  • When it is called inside an asynchronous method and it is invoked asynchronously.
  • When it is called inside an expression-bodied member and it is invoked in the context of a null instance.

It's worth noting that the MethodBase.GetCurrentMethod() method will return the method that is currently executing, and not the method where it is called from. This is important to keep in mind when you are debugging and trying to understand the call stack of your application.

 

 

作者:Chuck Lu    GitHub    
posted @   ChuckLu  阅读(53)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2022-01-19 How do I view a single file's history in GitK?
2019-01-19 程序员社区的聊天工具
2017-01-19 通过直接编码添加折线图到ChartControl
2016-01-19 What floating point types are available in .NET?
点击右上角即可分享
微信分享提示