diff --git a/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapperExtensions.cs b/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapperExtensions.cs index 2641216394..9178d69d8f 100644 --- a/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapperExtensions.cs +++ b/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapperExtensions.cs @@ -121,6 +121,8 @@ namespace Umbraco.Web.Models.Mapping //ignore, we'll do this in after map .ForMember(dto => dto.PropertyGroups, expression => expression.Ignore()) .ForMember(dto => dto.NoGroupPropertyTypes, expression => expression.Ignore()) + // ignore, composition is managed in AfterMapContentTypeSaveToEntity + .ForMember(dest => dest.ContentTypeComposition, opt => opt.Ignore()) .ForMember( dto => dto.AllowedContentTypes, diff --git a/src/UmbracoExamine/BaseUmbracoIndexer.cs b/src/UmbracoExamine/BaseUmbracoIndexer.cs index d5a9d6f233..ee77f5d05c 100644 --- a/src/UmbracoExamine/BaseUmbracoIndexer.cs +++ b/src/UmbracoExamine/BaseUmbracoIndexer.cs @@ -460,8 +460,19 @@ namespace UmbracoExamine if (xDoc != null) { var rootNode = xDoc.Root; - - AddNodesToIndex(rootNode.Elements(), type); + if (rootNode != null) + { + //the result will either be a single doc with an id as the root, or it will + // be multiple docs with a wrapper, we need to check for this + if (rootNode.HasAttributes) + { + AddNodesToIndex(new[] {rootNode}, type); + } + else + { + AddNodesToIndex(rootNode.Elements(), type); + } + } } }