Re[3]: RuntimeBinderException & dynamic
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 07.06.10 06:23
Оценка:
Здравствуйте, samius, Вы писали:

S>Здравствуйте, gandjustas, Вы писали:


S>>>Этот код кидает исключение RuntimeBinderException с сообщением

S>>>

S>>>'ConsoleApp.IFoo' does not contain a definition for 'Foo'

G>>Говорит что ConsoleApp.IFoo2 не содержит метода Foo.
S>Спасибо, мой английский позволяет понять это сообщение.
ConsoleApp.IFoo2

G>>Это C# делает вид, что методы в интерфейсах "наследуются", на уровне IL не так дела обстоят.

G>>RuntimeBinder довольно глуп, он на вход получает информацию что надо найти метод Foo для типа IFoo2, и его не находит, можете сами рефлексией посмотреть что у него такого метода нет. А пройтись по его интерфейсам, как это делает компилятор, почему-то не догадывается.

S>Я где-то краем глаза читал что RuntimeBinder делает в рантайме ту же работу, что и компилятор во время компиляции. Похоже, что это не так. В спеке на эту тему ничего не нашел.

Видимо не ту же работу.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.