27.05.2018 Замена наследования на аггрегирование и фасад
 
Есть ли простой синтаксис для проделывания этого (без написания тупого кода вручную и использования генераторов из библиотек для тестирования)?

т.е.

public class ObservableMyClass
{
    public void MyMethod1() { ... }
    public void MyProperty1 { get; set; }
}

public class MyClass
{
    ObservableMyClass myObject;
    public MyClass(ObservableMyClass myObject) { this.myObject = myObject; }
    public void MyMethod1() { myObject.MyMethod1(); }
    public void MyProperty1 { get {return myObject.MyProperty1;} set{myObject.MyProperty1 = value;} }
}


Не хотелось бы руками писать для каждого метода и свойства обёртку, и много внешнего кода тянуть.

Наследование мне нельзя, потому что объекты MyClass у меня связаны с объектами ObservableMyClass отношением N к 1, а не 1:1

 
 
 
 
10.12  .NET Reactor
15.11  n
15.11  C# ClickOnce