У меня есть следующая конструкция:
class Bla
{
public string Hello()
{
return "Hello my name is " + GetMyVariableName();
}
private string GetMyVariableName()
{
return "";//do magic here to determine the Variable name at the class that owns the Property
}
}
class Fasel
{
public Bla SomeProperty { get; set; }
public Bla AnotherProperty { get; set; }
void DoSomeAction()
{
SomeProperty = new Bla();
AnotherProperty = new Bla();
string name = SomeProperty.Hello(); //this sould return "Hello my name is SomeProperty"
name = AnotherProperty.Hello(); ////this sould return "Hello my name is AnotherProperty"
}
}
Это выглядит легко решаемым, поскольку я просто делаю рефлексию, чтобы определить имя в классе-владельце, но в моем особом случае я не могу этого сделать. Мне нужно знать в свойстве, как называется его в классе, которому он принадлежит.