WebApiClient 中动态路由的实现与使用 在这篇博客中,讨论了.NET平台下声明式RESTful客户端WebApiClient的动态路由实现与使用。介绍了WebApiClient的简单调用流程以及遇到的问题,提出了三种解决思路:使用[Uri]参数、使用{foobar}片段参数以及使用服务发现。作者展示了通过服务发现获取可用地址来动态调用服务的示例,并提到了WebApiClient的作者提供的服务发现扩展。
通过 ApiExplorer 为 Swagger 提供 MVC 扩展 文章讲述了作者因为 Jekins 项目模板不支持多项目解决方案而妥协使用混合技术栈的单一项目,并在项目中引入 Swagger 生成 API 文档。作者介绍了 Swagger 生成文档的核心依赖 IApiExplorer 接口,并针对 ASP.NET MVC 项目缺乏对 Swagger 的支持,创建了一个自定义的 MvcApiExplorer 类来扩展 Swagger 的功能。通过反射和自定义实现,使得 Swagger 能够识别 MVC 项目中的控制器和动作,并生成相应的 API 文档。作者还提供了相关的代码示例,并在 GitHub 上发布了扩展的代码和示例项目,方便读者学习和使用。
通过动态 Controller 实现从 WCF 到 Web API 的迁移 这篇文章介绍了如何通过 Castle 的动态代理来实现将 WCF 接口迁移到 Web API 上的过程。通过组合类和接口,借助 Castle 的 Dynamic Proxy 实现动态生成 Controller,替换默认组件以实现 WCF 接口通过 Web API 访问。文章还涵盖了 ASP.NET MVC 的原理、自定义组件的实现、容器注册替换、HTTP 动词支持和接口返回值优化等内容。最后提到了在 ASP.NET Core 中的 POCOController 特性,使得将任意类作为 Controller 更加简单。文章内容详实,为实现 WCF 到 Web API 的迁移提供了指导和思路。
声明式 RESTful 客户端 WebApiClient 在项目中的应用 项目采用敏捷开发后出现“联调”任务,由于前后端分离导致团队分成前后端组,前端负责展示数据,后端提供服务接口,但存在沟通困难。讨论三方面原因:设计不当、进度不一、沟通不畅。介绍前后端分离思想,客户端产品采用Native+Web技术架构,通过JSBridge实现Native和Web通信。详述WebApiClient库在.NET平台下类似Retrofit的作用,通过声明式方式定义接口调用。讨论上传下载接口、过滤器与OAuth2,以及可配置与动态化。强调前后端职责分离重要性,提出通过代理类调用后端API的想法。最后介绍WebApiClient的应用,提倡契约式接口声明,以更快速应对后端变化。