首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >netstandard中的CallerMemberName等价性

netstandard中的CallerMemberName等价性
EN

Stack Overflow用户
提问于 2017-08-20 02:52:22
回答 1查看 238关注 0票数 0

在.NET框架中,函数可以通过属性CallerFilePath、CallerMemberName、CallerLineNumber获得调用者的方法/文件/行号。在netstandard中这是不受支持的。它的等价性是什么?有没有办法做到这一点?

我希望这个函数可以抓取调用者的数据,而不需要调用者直接传递它们,就像我可以用属性来做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2017-08-20 03:43:50

您可以使用StackTrace类。它允许您以帧列表的形式跟踪有关执行的信息。Frame 0是你的当前元素,所以你的目标帧索引是1,当然,如果它在那里,例如

代码语言:javascript
复制
StackTrace st = new StackTrace(true);
var frame = st.GetFrame(1);
var method = frame.GetMethod();
var file = frame.GetFileName();
var line = frame.GetFileLineNumber();

检查该类的其他方法

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

https://stackoverflow.com/questions/45775249

复制
相关文章

相似问题

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