我使用了很多使用swagger的ASP.NET Core Web API,并且在使用这些API时,有很多请求,响应和Dto的复制粘贴。
F#具有类型提供程序https://fsharp.github.io/FSharp.Data/library/JsonProvider.html,这听起来很适合使用API,如果外部DTO的类型或名称不匹配,则会给我带来智能感知和编译错误。
如果可能的话,我想创建一个F#类库,它将使用Type提供程序并指向swagger json文件来生成类,然后我想在我的C#解决方案中使用F#类库,因为没有本机代码根据我在C#中知道的类型输入提供程序。
如果这行得通,我希望得到的是
- 无需将外部请求,响应和dto复制/粘贴为
- 类型提供者将提供此信息 如果外部API更改了其类型,则会编译错误
- 智能感知使编码更容易
是否有可能或是否有更好的解决方案?