Mit der Web-API und Swashbuckle zum Generieren von Swagger-Dokumentation habe ich zwei verschiedene Klassen mit demselben Namen in zwei verschiedenen Namespaces definiert. Wenn ich die Prahlerseite in meinem Browser öffne, heißt es
Widersprüchliche Schema-IDs: Doppelte Schema-IDs, die für die Typen A und B erkannt wurden. Eine mögliche Problemumgehung finden Sie in der Konfigurationseinstellung "UseFullTypeNameInSchemaIds"
vollständige Nachricht:
500: {"Message": "Ein Fehler ist aufgetreten.", "ExceptionMessage": "Konflikte mit Schema-IDs: Doppelte Schema-IDs für Typ A und B erkannt. Eine mögliche Problemumgehung finden Sie in der Konfigurationseinstellung" UseFullTypeNameInSchemaIds "," ExceptionType " ":" System.InvalidOperationException "," StackTrace ":" bei Swashbuckle.Swagger.SchemaRegistry.CreateRefSchema (Typ Typ) \ r \ n bei Swashbuckle.Swagger.SchemaRegistry.CreateInlineSchema (Typ Typ) \ r \ n bei Swashbuckle.S. SchemaRegistry.b__1f (JsonProperty prop) \ r \ n bei System.Linq.Enumerable.ToDictionary [TSource, TKey, TElement] (IEnumerable
1 source, Func
2 keySelector, Func2 elementSelector, IEqualityComparer
1 Vergleicher) \ r \ n bei Swashbuckle.Swagger.SchemaRegistry.CreateObjectSchema (JsonObjectContract jsonContract) \ r \ n bei Swashbuckle.Swagger.SchemaRegistry.CreateDefinitionSchema (Type type) \ r \ n bei Swashbuckle.Rw ) \ r \ n bei Swashbuckle.Swagger.SwaggerGenerator.CreateOperation (ApiDescription apiDesc, SchemaRegistry schemaRegistry) \ r \ n bei Swashbuckle.Swagger.SwaggerGenerator.CreatePathItem (IEnumerable1 apiDescriptions, SchemaRegistry schemaRegistry)\r\n at Swashbuckle.Swagger.SwaggerGenerator.<>c__DisplayClass7.<GetSwagger>b__4(IGrouping
2 group) \ r \ n bei System.Lumerq. TSource, TKey, TElement] (IEnumerable1 source, Func
2 keySelector, Func2 elementSelector, IEqualityComparer
1 Vergleicher) \ r \ n bei Swashbuckle.Swagger.SwaggerGenerator.GetSwagger (String rootUrl, String apiVersion) \ r \ n bei Swashbuckle.Application.SwaggerDocsHandler.SendAsync (HttpRequestMessage request, CancellationToken n). Http.HttpMessageInvoker.SendAsync (HttpRequestMessage-Anforderung, CancellationToken CancellationToken) \ r \ n unter System.Web.Http.Dispatcher.HttpRoutingDispatcher.SendAsync (HttpRequestMessage-Anforderung, CancellationToken. HttpRequestMessage-Anforderung, CancellationToken CancellationToken) \ r \ n unter System.Web.Http.HttpServer.d__0.MoveNext () "} http: // localhost: 24215 / swagger / docs / v1
Ich möchte die Namen meiner Klassen nicht ändern. Wie kann ich es reparieren?