/// <summary> /// Генерация схемы для редактирования контентов /// </summary> /// <exception cref="NotSupportedException" /> /// <exception cref="InvalidOperationException" /> public ProductSchema GetProductSchema(Content content) { if (content == null) { throw new ArgumentNullException(nameof(content)); } _contentService.LoadStructureCache(); _fieldService.LoadStructureCache(); VirtualFieldContext virtualFieldContext = _virtualFieldContextService.GetVirtualFieldContext(content); var context = new SchemaContext { Dictionaries = content.Fields.OfType <Dictionaries>().SingleOrDefault(), IgnoredFields = virtualFieldContext.IgnoredFields, }; ContentSchema contentSchema = GetContentSchema(content, context, ""); ProductSchema productSchema = GetProductSchema(contentSchema, context); return(productSchema); }