Пример #1
0
        public Guid SaveNew(IItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException(nameof(item));
            }

            var actualItem = item as DefaultItem;

            if (actualItem == null)
            {
                throw new ArgumentException($"Unknown item type: '{item.GetType().Name}'", nameof(item));
            }

            var guid = provider.Insert(actualItem.Type.Name, actualItem.GetEntity());

            var relations = new KeyValuePair <Guid, string>(item.Parent.Guid, item.Parent.Type.Name);

            provider.InsertItemRelations(item.Parent.Type.Name, item.Parent.Guid, new[] { relations }, CHILDREN_MAPPING_TABLE_NAME, true);

            return(guid);
        }