首页 文章

来自Swagger的AutoRest,但重用我现有的汇编类

提问于
浏览
3

我有一个Windows UWP客户端应用程序,需要调用我的ASP.NET服务托管的REST API . 要生成我的客户端代理,我使用以下Visual Studio选项...

右键单击项目 - >添加 - > REST API客户端...

我提供了swagger endpoints 的URL,它生成了预期的客户端代码 . 但缺点是它生成所有类,即使在我的情况下我有一个共享类库,其中定义了所有服务器端类 . 这很痛苦,因为生成的类不尊重我的类层次结构的继承,并将所有内容展平为非继承类 .

是否有可能让AutoRest重用现有的.NET库而不是总是生成新类?当我使用WCF客户端代理生成器时,这是一个选项 .

1 回答

  • 1

    似乎 Add REST API client 没有重复使用的高级设置 . 但 Add REST API client 有两种加载元数据文件,swagger URL和现有元数据文件的方法 . 通过在我的网站上进行测试,它应该能够更新现有的元数据文件并删除或调整您不希望生成的节点 . 然后在添加REST API客户端时加载更新的现有元数据 .

    生成的类可以由元数据json文件和主机值确定 . 您还可以尝试提交请求here,以查看swagger团队在生成元文件时是否可以保留层次结构 . 或者,您可能需要手动创建代理以重用库 .

相关问题