Обработка метода C #, который не определен для динамического объекта (он же response_to / method_missing)

Учитывая новую динамическую поддержку в C # 4, возможно ли написать класс таким образом, что если метод вызывается для экземпляра, а этот метод отсутствует, диспетчеризация передается другому методу? Это может выглядеть примерно так:

public class Apple : ... {
  // ...

  private ... MethodMissing(string name, ...) {
    if (name == "TurnIntoOrange") {
      // do something
    }
  }
}

dynamic d = new Apple();
d.TurnIntoOrange();       // Not actually defined on Apple; will pass to MethodMissing.

Другие языки будут называть это «method_missing support», под более общим заголовком метапрограммирования. Я не уверен, что именно C # называет это конкретно. Но возможно ли это?

Ответы на вопрос(1)

Ваш ответ на вопрос