swagger erreur: les conflits d'schemaIds: Double schemaIds détecté pour les types A et B

À l'aide de l'API Web et à l'aide de swashbuckle pour générer swagger documentation,
J'ai défini deux classes différentes avec le même nom dans les deux autres espaces de noms. quand j'ai ouvert swagger page dans mon navigateur, il dit

Contradictoires schemaIds: Double schemaIds détecté pour les types A et B. Voir le paramétrage de la configuration - "UseFullTypeNameInSchemaIds" pour un éventuel contournement

complet du message:

500 : {"Message":"Une erreur s'est produite.","ExceptionMessage":"Conflit schemaIds: Double schemaIds détecté pour les types A et B. Voir le paramétrage de la configuration - \"UseFullTypeNameInSchemaIds\" pour un éventuel contournement","ExceptionType":"le Système de.InvalidOperationException","StackTrace":" au Swashbuckle.Swagger.SchemaRegistry.CreateRefSchema(Type)\r\n à Swashbuckle.Swagger.SchemaRegistry.CreateInlineSchema(Type)\r\n à Swashbuckle.Swagger.SchemaRegistry.b__1f(JsonProperty prop)\r\n au Système.Linq.Énumérable.ToDictionary[TSource,TKey,TElement](IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer)\r\n à Swashbuckle.Swagger.SchemaRegistry.CreateObjectSchema(JsonObjectContract jsonContract)\r\n à Swashbuckle.Swagger.SchemaRegistry.CreateDefinitionSchema(Type)\r\n à Swashbuckle.Swagger.SchemaRegistry.GetOrRegister(Type)\r\n à Swashbuckle.Swagger.SwaggerGenerator.CreateOperation(ApiDescription apiDesc, SchemaRegistry schemaRegistry)\r\n à Swashbuckle.Swagger.SwaggerGenerator.CreatePathItem(IEnumerable1 apiDescriptions, SchemaRegistry schemaRegistry)\r\n at Swashbuckle.Swagger.SwaggerGenerator.<>c__DisplayClass7.<GetSwagger>b__4(IGrouping2 groupe)\r\n au Système.Linq.Énumérable.ToDictionary[TSource,TKey,TElement](IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer)\r\n à Swashbuckle.Swagger.SwaggerGenerator.GetSwagger(String rootUrl, Chaîne apiVersion)\r\n à Swashbuckle.Application.SwaggerDocsHandler.SendAsync(HttpRequestMessage demande, CancellationToken cancellationToken)\r\n au Système.Net.Http.HttpMessageInvoker.SendAsync(HttpRequestMessage demande, CancellationToken cancellationToken)\r\n au Système.Web.Http.Répartiteur.HttpRoutingDispatcher.SendAsync(HttpRequestMessage demande, CancellationToken cancellationToken)\r\n au Système.Net.Http.DelegatingHandler.SendAsync(HttpRequestMessage demande, CancellationToken cancellationToken)\r\n au Système.Web.Http.HttpServer.d__0.MoveNext()"} http://localhost:24215/swagger/docs/v1

Je ne veux pas changer mes classes de noms. Comment puis-je résoudre ce problème?

OriginalL'auteur Mahdi Ataollahi | 2017-09-06