Пример #1
0
        /// <summary>
        /// Вызывается при копировании объекта.
        /// <para>Выполняет заполнение копии объекта <paramref name="copy"/>.</para>
        /// <para>Связь данного элемента с объектом метаданных (<seealso cref="MetadataTreeElementBase.MetadataLink"/>) в объект <paramref name="copy"/> не копируется.</para>
        /// </summary>
        /// <param name="args">Параметры копирования.</param>
        /// <param name="copy">Копия объекта.</param>
        protected sealed override void PopulateCopy(CopyArgs args, MetadataTreeElementBase copy)
        {
            var locCopy = copy.EnsureNotNull(nameof(copy)).EnsureOfType <MetadataTreeElementBase, EmbeddedMetadataTreeElement>().Value;

            //
            locCopy._embeddedMetadata = null;
            PopulateCopy(args, locCopy);
            base.PopulateCopy(args, copy);
        }
Пример #2
0
 /// <summary>
 /// Вызывается при копировании объекта.
 /// <para>Выполняет заполнение копии объекта <paramref name="copy"/>.</para>
 /// <para>Связь данного элемента с объектом метаданных (<seealso cref="MetadataLink"/>) в объект <paramref name="copy"/> не копируется.</para>
 /// </summary>
 /// <param name="args">Параметры копирования.</param>
 /// <param name="copy">Копия объекта.</param>
 protected virtual void PopulateCopy(CopyArgs args, MetadataTreeElementBase copy)
 {
     copy.EnsureNotNull(nameof(copy));
     //
     if (args.Node != null)
     {
         var link = new Link <IMetadataTreeNode, IMetadataTreeElement>(args.Node, copy);
         copy.WriteDA(ref copy._nodeLink, link);
         args.Node.SetMetadataElement(link);
     }
 }