我可以在带有类型提供程序的F#类库中创建一个API网关,并在C#解决方案中使用它来使用swagger在外部Web Api上获得智能感知吗?

我使用了很多使用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#中知道的类型输入提供程序。

如果这行得通,我希望得到的是

  1. 无需将外部请求,响应和dto复制/粘贴为
  2. 类型提供者将提供此信息     如果外部API更改了其类型,则会编译错误
  3. 智能感知使编码更容易

是否有可能或是否有更好的解决方案?

dizihenmang1 回答:我可以在带有类型提供程序的F#类库中创建一个API网关,并在C#解决方案中使用它来使用swagger在外部Web Api上获得智能感知吗?

由于Swagger TypeProvidergenerative,因此 是可能的。

其他解决方案包括NSwag或使用swagger.io上的生成器的手动工作流程

本文链接:https://www.f2er.com/3137853.html

大家都在问