寓言将字符串转换为枚举,而不进行匹配或查找

时间:2019-02-21 14:46:23

标签: f# fable-f#

在Fsharp中,您可以将字符串转换为枚举链接,如下所示:

Button->setFocusPolicy(Qt::NoFocus)

在寓言中,出现以下错误:

type Langs = 
    | En = 0
    | Afr = 1

let tryLang str =
    try 
        Enum.Parse(typedefof<Langs>, str) :?> Langs
    with e ->
        Langs.En

是否有一种无需使用match语句或其他查询即可进行转换的方法?

谢谢

1 个答案:

答案 0 :(得分:2)

简单的答案是:不,寓言无法做到这一点。

寓言可以编译大多数F#,但很少编译.Net BCL(基类库)。

但是,您可能对StringEnum attribute感兴趣,以解决您的特定问题。