繁体   English   中英

Netstandard中的CallerMemberName等效项

[英]CallerMemberName equivalence in netstandard

在.NET Framework中,函数可以通过属性[CallerFilePath],[CallerMemberName],[CallerLineNumber]获取调用方的方法/文件/行号。 在netstandard中,不支持此功能。 等价的是什么? 有没有办法做到这一点?

我会很高兴该函数可以捕获调用者数据,而无需调用者直接传递它们,就像我能够使用属性那样。

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

StackTrace st = new StackTrace(true);
var frame = st.GetFrame(1);
var method = frame.GetMethod();
var file = frame.GetFileName();
var line = frame.GetFileLineNumber();

检查该类的其他方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM