class BaseClass
{
public void Create()
{
ChildClass child = new ChildClass(this);
}
class ChildClass
{
private BaseClass _baseClass;
public ChildClass(BaseClass baseClass)
{
_baseClass = baseClass;
}
}
}
Можно ли получить BaseClass в ChildClass без передачи его в конструктор?
Можно ли получить BaseClass в ChildClass без передачи его в конструктор?
Нет нельзя.
Если и есть какие-то хаки, то они убивают производительность.
Вы, вероятно, исходите из соображений, что объект вложенного класса не может существовать без объекта объемлющего. Но в общем случае это не так. Например, можно передать null в конструктор ChildClass, объект вложенного класса при этом создастся, но экземпляра объемлющего класса для него не предоставлено.
Можно, я думаю, через рефлексию получить название объемлющего класса внутри вложенного. Но вам же нужен не класс, а именно его экземпляр. А подобного рода отношению как раз и задаются вашим (пользовательским) кодом, а не какой-то встроенной архитерктурной особенностью фреймворка.
Таким образом, без явной передачи экземпляра в общем случае не обойтись.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости