Как узнать, какому свойству класса присвоен данный экземпляр? Вопрос для знатоков C#.
У меня есть два класса:class A {
public B prop1 {get; set;}
public B prop2 {get; set;}
}
class B {
public B() {
// я присвоен свойству prop1 или prop2?
}
}
Как мне узнать из конструктора класса B, какому из свойств родительского класса A (prop1 или prop2) данный экземпляр класса B присвоен? Интересует именно название свойства.

21 Авг 2019 в 07:01
161 +1
0
Ответы
1

В 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 при его создании.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир