0

我正在使用 SAFE 堆栈构建一个应用程序,并且我的模型中有一个 System.Uri。当我运行我的代码时,我在控制台中收到一个错误“无法为 System.Uri 生成自动编码器......”
到目前为止,我的谷歌搜索已经让我到了这里

module CustomEncoders

open Thoth.Json
let uriEncoder (uri:System.Uri) = Encode.string (uri.ToString())

let uriDecoder = ????

let myExtraCoders =
    Extra.empty
    |> Extra.withCustom uriEncoder uriDecoder 


let modelEncoder = Encode.Auto.generateEncoder(extra = myExtraCoders)
let modelDecoder = Decode.Auto.generateDecoder(extra = myExtraCoders)

然后在我的 App.fs 中添加

|> Program.withDebuggerCoders CustomEncoders.modelEncoder CustomEncoders.modelDecoder

我想我已经了解如何创建编码器,但我不知道如何编写解码器部分。
我显然可以用字符串替换我的 System.Uri 字段,但这感觉不是正确的解决方案。

4

0 回答 0