Как узнать, какому свойству класса присвоен данный экземпляр? Вопрос для знатоков C#. У меня есть два класса:class A { public B prop1 {get; set;} public B prop2 {get; set;} } class B { public B() { // я присвоен свойству prop1 или prop2? } } Как мне узнать из конструктора класса B, какому из свойств родительского класса A (prop1 или prop2) данный экземпляр класса B присвоен? Интересует именно название свойства.
В C# нет прямого способа узнать из конструктора класса B, какому из свойств родительского класса A данный экземпляр присвоен. Однако, можно передать информацию о том, какому свойству присваивается экземпляр класса B, используя параметр или флаг в конструкторе B. Например:
class A { public B prop1 {get; set;} public B prop2 {get; set;} } class B { public B(bool isProp1) { if (isProp1) { // экземпляр B присвоен свойству prop1 } else { // экземпляр B присвоен свойству prop2 } } } // Использование: A a = new A(); a.prop1 = new B(true); // B присвоен prop1 a.prop2 = new B(false); // B присвоен prop2
Таким образом, можно определить, какому свойству присвоен экземпляр класса B при его создании.
В C# нет прямого способа узнать из конструктора класса B, какому из свойств родительского класса A данный экземпляр присвоен. Однако, можно передать информацию о том, какому свойству присваивается экземпляр класса B, используя параметр или флаг в конструкторе B. Например:
class A {public B prop1 {get; set;}
public B prop2 {get; set;}
}
class B {
public B(bool isProp1) {
if (isProp1) {
// экземпляр B присвоен свойству prop1
} else {
// экземпляр B присвоен свойству prop2
}
}
}
// Использование:
A a = new A();
a.prop1 = new B(true); // B присвоен prop1
a.prop2 = new B(false); // B присвоен prop2
Таким образом, можно определить, какому свойству присвоен экземпляр класса B при его создании.