У меня есть веб-проект api 2. Он настроен на самообслуживание с использованием owin. Он не имеет никакого файла global.asax. Мне нужно иметь страницы справки для веб-api и использовать swaschbuckle для этого. Но rooturl/swagger/docs не дает никакого выхода. Я следую инструкциям здесь 'https://github.com/domaindrivendev/Swashbuckle/issues/196', но он все еще не работает. Ниже мой код конфигурацииSwashbuckle swagger не работает
public void Configuration(IAppBuilder app) { // Configure DI container = BuildDI(); // Create the configuration. OWIN Should create a new httpconfiguration. // GlobalConfiguration can't be used. HttpConfiguration = new HttpConfiguration(); HttpConfiguration.Formatters.XmlFormatter.UseXmlSerializer = true; HttpConfiguration.MapHttpAttributeRoutes(); HttpConfiguration.DependencyResolver = new AutofacWebApiDependencyResolver(container); // Set ServicePointManager properties. ServicePointManager.ServerCertificateValidationCallback = ((sender, cert, chain, sslPolicyErrors) => true); // 10 concurrent connections can be made on the service point. ServicePointManager.DefaultConnectionLimit = 10; // After the idle time expires, the ServicePoint object is eligible for // garbage collection and cannot be used by the ServicePointManager object. ServicePointManager.MaxServicePointIdleTime = 30000; // 30 Seconds. app.UseSerilogRequestContext("RequestId"); // Middleware is injected form DI. app.UseAutofacMiddleware(container); app.UseAutofacWebApi(HttpConfiguration); //Enable swashbuckle SwaggerConfig.Register(HttpConfiguration); // Webapi middleware. Do it at the end. app.UseWebApi(HttpConfiguration); // Register callback to dispose container. RegisterShutdownCallback(app, container); } --------------------------------------------------------------- public class SwaggerConfig { public static void Register(HttpConfiguration config) { config.EnableSwagger(c => { c.RootUrl(rurl => ConfigurationManager.AppSettings["hostUrl"].ToString()); c.IncludeXmlComments(GetXmlCommentsFileLocation()); c.SingleApiVersion("v1", "Isone"); }) .EnableSwaggerUi(c => { }); } private static string GetXmlCommentsFileLocation() { var baseDirectory = AppDomain.CurrentDomain.BaseDirectory + "\\bin"; var commentsFileName = Assembly.GetExecutingAssembly().GetName().Name + ".XML"; var commentsFileLocation = Path.Combine(baseDirectory, commentsFileName); return commentsFileLocation; } } --------------------------------------------------------------
Пожалуйста, укажите ошибку, если они есть в коде.