В соответствии с документом NSWAG и OWIN ( Промежуточное ПО OWIN ) я должен вызвать следующее:
public void Configuration(IAppBuilder app)
{
var config = new HttpConfiguration();
var apiExplorer = GlobalConfiguration.Configuration.
AddVersionedApiExplorer(
options =>
{
options.GroupNameFormat = "'v'VVV";
});
app.UseSwaggerUi3(typeof(Startup).Assembly, settings =>
{
// configure settings here
// settings.GeneratorSettings.*: Generator settings and
// extension points settings.*: Routing and UI settings
});
WebApiConfig.Register(config);
config.MapHttpAttributeRoutes();
config.EnsureInitialized();
}
, но каждый раз, когда вызывается config.MapHttpAttributeRoutes();
, я получаю следующую ошибку:
System.ArgumentException: 'An item with the same key has already been added.'
StackTrace тоже не помогает, так как все, что я получаю:
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value,
Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at System.Web.Http.HttpRouteCollection.Add(String name, IHttpRoute route)
at System.Web.Http.Routing.AttributeRoutingMapper.MapAttributeRoutes
(HttpConfiguration configuration, IInlineConstraintResolver
constraintResolver, IDirectRouteProvider directRouteProvider)
at System.Web.Http.HttpConfigurationExtensions.MapHttpAttributeRoute
(HttpConfiguration configuration)
at Esb.MyTime.WebApi.Startup.Configuration(IAppBuilder app) in
D:\Source\MyProject\App_Start\Startup.cs:line 33
В его нынешнем виде у нас есть рабочее решение с NSwag, но класс запуска owin не получаетсрабатывает, но если я изменяю свой код для запуска запуска, он игнорирует NSwag, поэтому я подумал, что буду следовать точным инструкциям о том, как получить NSwag с OWIN, но пока мне не повезет!
Можеткто-нибудь помочь?
Спасибо.