Пример #1
0
        private static void AddAttributeButCheckForDiffernce(Item sourceItem, Attribute sourceAttrib, Item destItem, Attribute destAttrib)
        {
            var test = sourceItem.GetAttributeValueAsText(sourceAttrib);
            if (destItem.GetAttributeIsAssigned(destAttrib))
            {
                // check values are same
                var testDest = destItem.GetAttributeValueAsText(destAttrib);
                if (test != testDest)
                {
                    destItem.SetAttributeValue(destAttrib, _multipleValues);
                    return;
                }

            }
            // else can set
            destItem.SetAttributeValue(destAttrib, test);
        }
Пример #2
0
        private static void CopyAllAttributeValues(Item itemSource, Item itemDestination)
        {
            foreach (var attrib in itemSource.Story.Attributes)
            {
                if (itemSource.GetAttributeIsAssigned(attrib)) // only copy the value if its assigned
                {
                    var attD = EnsureAttributeExists(attrib, itemDestination.Story);

                    itemDestination.SetAttributeValue(attD, itemSource.GetAttributeValueAsText(attrib));
                }
            }
        }
Пример #3
0
 private static void SetAttributeWithLogging(Logger log, Item item, Attribute att, string value)
 {
     try
     {
         Debug.WriteLine($"{att.Name} {value}");
         item.SetAttributeValue(att, value);
         Debug.WriteLine($"{att.Name} {item.GetAttributeValueAsText(att)}");
     }
     catch (Exception e)
     {
         log.Log($"Error: {e.Message}, value='{value}', item='{item.Name}', attribute='{att.Name}'");
     }
     
 }