c# - 如何避免从 F# 库返回 Task<Microsoft.FSharp.Core.Unit>

标签 c# .net f# interop clr

当使用 Async.StartAsTask 在 F# 中包装异步操作时,返回的类型将为 Task<unit> .这使得接口(interface)的用户依赖于 F# 核心库。是否有避免这种情况的推荐做法,或者将其保留为默认值通常是可接受的行为?

最佳答案

您可以简单地向上转换 Task<Unit>Task因为您不需要访问通用结果。

例如

let taskOfUnit = asyncOfUnit |> Async.StartAsTask
taskOfUnit :> Task

关于c# - 如何避免从 F# 库返回 Task<Microsoft.FSharp.Core.Unit>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21905599/

相关文章:

c# - 通过方法处理每个单独的正则表达式匹配的好模式是什么

F# Seq.choose() 错误 FS0001

.net - 在 f# 中使用 Neo4jClient 创建带标签的节点

f# - 寓言 Elmish 中的异步命令

c# - Visual C#程序 'xyz'不包含适用于入口点的静态 'Main'方法

c# - 计时器流逝的资源全局化

c# - 将结构数组从 C++(COM) 传递到 C#

c# - 将 SQLite 数据库同步到 SQL Server

c# - 编译应用程序时,它会删除引用

c# - 如何为我的 UserControl 绑定(bind)不同的 DataContext?