diff --git a/src/Squidex.Domain.Apps.Core.Model/Schemas/FieldRegistry.cs b/src/Squidex.Domain.Apps.Core.Model/Schemas/FieldRegistry.cs index 7d1a61635..f3488d75e 100644 --- a/src/Squidex.Domain.Apps.Core.Model/Schemas/FieldRegistry.cs +++ b/src/Squidex.Domain.Apps.Core.Model/Schemas/FieldRegistry.cs @@ -7,6 +7,7 @@ using System; using System.Collections.Generic; +using System.Linq; using Squidex.Infrastructure; namespace Squidex.Domain.Apps.Core.Schemas @@ -24,25 +25,22 @@ namespace Squidex.Domain.Apps.Core.Schemas this.typeNameRegistry = typeNameRegistry; - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); - RegisterField(); + var types = typeof(FieldRegistry).Assembly.GetTypes().Where(x => x.BaseType == typeof(FieldProperties)); + + foreach (var type in types) + { + RegisterField(type); + } typeNameRegistry.MapObsolete(typeof(ReferencesFieldProperties), "DateTime"); typeNameRegistry.MapObsolete(typeof(DateTimeFieldProperties), "References"); } - private void RegisterField() + private void RegisterField(Type type) { - typeNameRegistry.Map(typeof(T)); + typeNameRegistry.Map(type); - fieldsByPropertyType[typeof(T)] = (id, name, partitioning, properties) => properties.CreateField(id, name, partitioning); + fieldsByPropertyType[type] = (id, name, partitioning, properties) => properties.CreateField(id, name, partitioning); } public Field CreateField(long id, string name, Partitioning partitioning, FieldProperties properties) diff --git a/src/Squidex.Domain.Apps.Entities/Contents/ContentQueryService.cs b/src/Squidex.Domain.Apps.Entities/Contents/ContentQueryService.cs index b6c9a932d..7e14b50e7 100644 --- a/src/Squidex.Domain.Apps.Entities/Contents/ContentQueryService.cs +++ b/src/Squidex.Domain.Apps.Entities/Contents/ContentQueryService.cs @@ -179,7 +179,6 @@ namespace Squidex.Domain.Apps.Entities.Contents yield return FieldConverters.ExcludeChangedTypes(); } - yield return FieldConverters.DecodeJson(); yield return FieldConverters.ResolveInvariant(context.App.LanguagesConfig); yield return FieldConverters.ResolveLanguages(context.App.LanguagesConfig);