猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
C#类是否知道实例化了哪个文件?
是否有可能告诉哪个文件在C#中实例化了一个类?
例如,如果我有Page1.cs和Page2.cs,myclass.cs中的构造函数可以知道哪个页面从中创建了对象吗?
九州编程
浏览 135
回答 3
3回答
富国沪深
一个班级可以通过检查构造期间的堆栈跟踪来了解哪个班级实例化了它。因此,例如,如果要将其添加到类的构造函数中:var creator = new StackTrace().GetFrame(1).GetMethod().DeclaringType.FullName;...您将了解调用的代码的位置new。位置与班级名称相同。您当然可以检查声明类型的属性,以了解程序集名称,位置等。请记住,如果您链接了构造函数,则必须将堆栈框架走得更远。同样,这对于通过反序列化创建的任何对象均无效。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C#
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续