简明地创建一个IDictionary <_,obj>

Dan*_*iel 5 f#

是否有更短的方式来创建一个IDictionary<_,obj>,可能没有拳击每个值?这就是我所拥有的.

let values =
  [ "a", box 1
    "b", box "foo"
    "c", box true ]
  |> dict
Run Code Online (Sandbox Code Playgroud)

Dictionary<_,obj>.Add 可以在没有拳击的情况下进行调用,但我无法找到一种方法来使用它比我的更短.

我希望除了定义拳击操作员之外的其他东西.

编辑

根据Brian的建议,这是一种方法,但它有自己的问题.

let values =
  Seq.zip ["a"; "b"; "c"] ([1; "foo"; true] : obj list) |> dict
Run Code Online (Sandbox Code Playgroud)

Dan*_*iel 11

这是一个解决方案,遵循kvb的建议(可能是最简洁,最清晰,到目前为止):

let inline (=>) a b = a, box b

let values =
  [ "a" => 1
    "b" => "foo"
    "c" => true ]
  |> dict
Run Code Online (Sandbox Code Playgroud)