Как я могу использовать динамический объект C# в Boo (Rhino DSL)?
Я использую Rhino DSL, и когда я хочу передать динамический объект в сценарий, компилятор boo выдает следующее исключение: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 ответ
Не уверен, как именно вызывается Percent, или Rhino.DSL настроен с Ducky Boo по умолчанию, но вы можете попробовать "casting" как Duck, например (myobject as duck).Percent
, См. http://boo.codehaus.org/Duck+Typing для справки.