高手来。小问题。。来着有分。欢迎来解答。
public class A
{
public string a;
}
public class B
{
A A1 = new A();
}
请教下 怎么根据对象A1获得 类B的名字。。。。 --------------------编程问答-------------------- 虽然不会 但表示关注 顶你。希望你早日得到答案。 顺便给点分把 --------------------编程问答-------------------- new StackFrame(1)).GetMethod().Name调用自己的那个函数的名称
搜
StackFrame
StackTrace
--------------------编程问答-------------------- 怎么获得A1? --------------------编程问答-------------------- A在哪个类中实例化过? --------------------编程问答-------------------- 没意思!!!!!!! --------------------编程问答--------------------
--------------------编程问答-------------------- A在哪个类 实例化。我就想获得那个实例化类的名字。。。。 --------------------编程问答--------------------
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name;
public class A
{
public string a;
pulic GetClassName()
{
......
}
}
public class B
{
A A1 = new A();
A1.GetClassName(); 通过这个方法怎么获得B
}
A1.GetClassName(); 通过这个方法怎么获得B
--------------------编程问答-------------------- 有人来啊吗。。。。。。。。 我刚开始表达的可能不清楚。下面又描述了下。求高手指点。 --------------------编程问答--------------------
class A
{
public string GetClassName()
{
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName;
}
}
public class B
{
A A1 = new A();
A1.GetClassName(); 通过这个方法怎么获得B
}
楼上几位朋友都是正确的。 --------------------编程问答--------------------
这样写也不对,获取的是调用方法的类。
没有想到怎么去做,你说说你为什么要这么做吧,这种需求很奇怪, --------------------编程问答-------------------- 需求是我封装了一个Gridview控件。。里面有一个保存布局的功能。 我希望调用的时候默认按照Gridview的所在类的类名来作为文件名来保存,这样能比较好的保证文件名不重复。。。。
难不成我每用一个Gridview都要定义默认文件名?这样不是有点麻烦么。。。
类似的功能不知道各位如何处置。。。请教高人 。。。 --------------------编程问答-------------------- 有这么调的?
封装,继承,多态》。。。。。 --------------------编程问答-------------------- 详细说说您的思路呗。13楼。我虚心请教。。。 --------------------编程问答-------------------- 帮忙顶顶 不会 咱也不能打酱油 --------------------编程问答--------------------
class A
{
public string GetClassName()
{
StackTrace ss = new StackTrace(true);
//return ss.GetFrame(1).GetMethod().DeclaringType.FullName;//返回:B
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName;//返回:A
}
}
public class B
{
A A1 = new A();
A1.GetClassName(); 通过这个方法怎么获得B
}
这个方式明显是正确的,一试便知。 --------------------编程问答-------------------- 如果只是为了不重名用当前时间做默认名称不就可以了…… --------------------编程问答-------------------- 面向对象的三大特点.... --------------------编程问答--------------------
直接利用反射就可以获得类名了,你在使用反射前考虑下:我是否真的有必要反射。
补充:.NET技术 , C#