Как я могу использовать динамический объект C # в Boo (Rhino DSL)? - PullRequest
1 голос
/ 05 апреля 2011

Я использую Rhino DSL, и когда я хочу передать динамический объект в скрипт, Бу компилятор выдает исключение ниже: BCE0019: Boo.Lang.Compiler.CompilerError: «Процент» не является членом «объекта».

мой код бу:

Result = Run().Percent

C # Dsl Базовый код для метода Run:

dynamic myDynamicObject;
public dynamic Run()
{

   //do somthing

   return myDynamicObject;
}
  • в методе Run я устанавливаю myDynamicObject для класса, который наследуется от DynamicObject и переопределяет метод TrySetValue & TryGetValue

1 Ответ

0 голосов
/ 05 апреля 2011

Не уверен, как именно вызывается «Percent» или Rhino.DSL настроен с Ducky Boo по умолчанию, но вы можете попробовать «casting» как Duck, например, (myobject as duck).Percent.См. http://boo.codehaus.org/Duck+Typing для справки.

...