Ich versuche rekursiv den Namen einer Variablen, zum Beispiel für die Variable test.child
, wenn ich folgen this topic, bekomme ich nur child
und ich habe keine Ahnung, wie Sie alle Eltern bekommen.Rekursiv erhalten Variablenname
Hier mein Testcode ist:
public static class MemberInfoGetting
{
public static string GetMemberName<T>(Expression<Func<T>> memberExpression)
{
MemberExpression expressionBody = (MemberExpression)memberExpression.Body;
return expressionBody.Member.Name;
}
}
public class Test
{
public string child = "childValue";
}
static void Main(string[] args)
{
//string testVariable = "value";
Test test = new Test();
test.child = "newValue";
string nameOfTestVariable = MemberInfoGetting.GetMemberName(() => test.child);
Console.WriteLine(nameOfTestVariable + " | " + test.child);
Console.Read();
}
Was wäre ein "Elternteil" in Ihrer Stichprobe? – gregkalapos
hier 'test' ist das übergeordnete – LeCintas
Ich sehe, also wollen Sie den Variablennamen + den Namen der Instanz? (und wenn das wieder in einer anderen Instanz enthalten ist der Name .. etc.) – gregkalapos