【问题标题】:How can i use c# dynamic object in boo (Rhino DSL)?如何在 boo (Rhino DSL) 中使用 c# 动态对象?
【发布时间】:2011-04-05 13:12:15
【问题描述】:

我正在使用 Rhino DSL,当我想将动态对象传递给脚本时, boo 编译器抛出以下异常: BCE0019: Boo.Lang.Compiler.CompilerError: 'Percent' 不是 'object' 的成员。

我的嘘代码:

Result = Run().Percent

Run 方法的 C# Dsl 基本代码:

dynamic myDynamicObject;
public dynamic Run()
{

   //do somthing

   return myDynamicObject;
}
  • 在 Run 方法中,我将 myDynamicObject 设置为继承自 DynamicObject 并覆盖 TrySetValue 和 TryGetValue 方法的类

【问题讨论】:

    标签: c# dynamic boo rhino-dsl


    【解决方案1】:

    不确定 'Percent' 是如何被调用的,或者 Rhino.DSL 是否默认配置了鸭子 Boo,但您可以尝试将 'casting' 设置为鸭子,例如(myobject as duck).Percent。参考http://boo.codehaus.org/Duck+Typing。

    【讨论】:

    • 谢谢,我编辑了我的问题并添加了代码以显示“百分比”的准确调用方式
    • 我也尝试投射到鸭子,但它也无法编译!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-15
    • 2014-06-03
    • 2014-08-19
    • 2022-01-07
    • 2021-08-05
    • 1970-01-01
    相关资源
    最近更新 更多