c# - F# 动态对象访问

标签 c# .net f# dynamic-language-runtime

有没有一种方法可以在 F# 中访问类似于 C# 动态的 DLR 对象(例如 DynamicObject 子类实例)成员(属性和方法)?

最佳答案

现在 nuget 上有一个模块使用 dlr 来实现动态运算符。 FSharp.Interop.Dynamic

与现有的许多代码片段相比,它有几个优点。

  • 它使用的性能 Dynamitey对于实现缓存的 dlr 调用,它是一个 PCL 库
  • 处理返回 void 的方法,如果您不丢弃这些方法的结果,您将获得绑定(bind)异常。
  • dlr 会自动处理函数调用委托(delegate)返回的情况,这也将允许您对 FSharpFunc 执行相同的操作
  • 添加一个 !?前缀运算符,用于处理在运行时直接调用您没有类型的动态对象和函数。

    它是开源的,Apache license,你可以看看implementation和基本单元测试example cases .

关于c# - F# 动态对象访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6150087/

相关文章:

c# - 让我的应用程序由 GPO 控制

mysql - 如何保存和保留日期毫秒(MySQL)

f# - 从 F# 中的序列中删除单个非唯一值

.net - 与DataGridColumn.Visibility匹配的F#模式

f# - 整理我的相互递归类型

c# - 第一次使用 AJAX,示例不适合我

c# - 如何处理/取消同一用户 asp.net 的并发请求

c# - 动态创建ImageButton并将其onclick函数设置为ServerTransfer到另一个WebForm

C# 线程 - 以线程安全的方式使用类与以线程安全的方式实现它

c# - StructureMap -> EnrichWith 过于丰富(其他实例)