internal string FromWebApiAssembly(string assemblyPath, string controllerClassName, string urlTemplate) { var assembly = Assembly.LoadFrom(assemblyPath); var type = assembly.GetType(controllerClassName); var generator = new WebApiToSwaggerGenerator(urlTemplate); return generator.Generate(type).ToJson(); }
public void When_generating_swagger_from_controller_than_all_required_operations_are_available() { //// Arrange var generator = new WebApiToSwaggerGenerator("api/{controller}/{action}/{id}"); //// Act var service = generator.Generate<PersonsController>(); var swaggerSpecification = service.ToJson(); //// Assert Assert.AreEqual(8, service.Operations.Count()); }
public HttpResponseMessage Swagger() { var generator = new WebApiToSwaggerGenerator(Configuration.Routes.First(r => !string.IsNullOrEmpty(r.RouteTemplate)).RouteTemplate); var service = generator.Generate(GetType(), "Swagger"); return new HttpResponseMessage { Content = new StringContent(service.ToJson(), Encoding.UTF8) }; }