当我不知道班级名称时,如何为班级成员打电话然后使用(设定值)?
为了最好地理解,让我举例说明,我的意思是:
例如我有课程:
static class ClassA {
public static string Property1;
public static bool Property2;
public static async Task<bool> Method () {
// ...
await Worker.Do();
return true;
}
}
static class Worked {
public static async Task<bool> Do() {
// ...
var CallerClassName = new StackTrace().GetFrame(1).GetMethod().ReflectedType.Name;
// setup value for caller class Property 1 = "test";
// Like ClassA.Property1 = "test"; but using dynamic name;
// setup value for caller class Property 2 = true;
// Like ClassA.Property2 = true; but using dynamic name;
}
}
我应该说,我知道那些属性存在于Caller类中,如果我不知道它的类调用者名称,我不知道如何动态地设置它们的名字。 另外我应该说所有这些方法,属性和类都是静态的。
感谢您的帮助!
答案 0 :(得分:0)
如果你真的坚持,你可以使用反射Set object property using reflection