我试图找到创建对象的第一个位置:(当它的构造函数被调用时)。
例如:假设我在DLL“DLL_A”中有export2()
。 objA obejct已通过多次调用传递,直到我们到达DLL_B,我们处理此对象“objA”。
在DLL_B中是否有任何反射方法/方法可以知道在DLL_A中创建了Object Obj_A?
答案 0 :(得分:5)
如果我理解正确,你需要A
中的一个属性,它返回调用A
构造函数的类的名称/方法。正确的吗?
然后您可以使用Caller Information in C#:CallerFilePathAttribute
,CallerLineNumberAttribute
,CallerMemberNameAttribute
可以在A
的构造函数中用作可选参数。
然后可以在字段/属性的构造函数中保存这些信息,然后再进行检索。