示例#1
0
        /// <summary>
        /// Expand property.
        /// </summary>
        /// <param name="propertyDefinition"></param>
        public void Expand(ExtendedPropertyDefinition extendedPropertyDefinition)
        {
            extendedPropertyDefinition.ThrowIfNull(nameof(extendedPropertyDefinition));
            if (null == this.expandablePropertySet)
            {
                this.expandablePropertySet = new ExpandablePropertySet();
            }

            this.expandablePropertySet.Add(extendedPropertyDefinition);
        }
示例#2
0
        /// <summary>
        /// Add extended property to set.
        /// </summary>
        /// <param name="extendedPropertyDefinition"></param>
        public void Add(ExtendedPropertyDefinition extendedPropertyDefinition)
        {
            extendedPropertyDefinition.ThrowIfNull(nameof(extendedPropertyDefinition));
            switch (extendedPropertyDefinition.MapiPropertyValueType)
            {
            case MapiPropertyValueType.MultiValueExtendedProperties:
                SearchFilter multiValueExtFilter = new SearchFilter.IsEqualTo(
                    MultiValueLegacyExtendedPropertyObjectSchema.Id,
                    extendedPropertyDefinition.Definition);

                this.multiValueExtendedPropertyFilterCollection.AddFilter(multiValueExtFilter);
                break;

            case MapiPropertyValueType.SingleValueExtendedProperties:
                SearchFilter singleValueExtFilter = new SearchFilter.IsEqualTo(
                    SingleValueLegacyExtendedPropertyObjectSchema.Id,
                    extendedPropertyDefinition.Definition);

                this.singleValueExtendedPropertyFilterCollection.AddFilter(singleValueExtFilter);
                break;
            }
        }
示例#3
0
 /// <summary>
 /// Extended property definition.
 /// </summary>
 /// <param name="extendedPropertyDefinition"></param>
 public void Add(ExtendedPropertyDefinition extendedPropertyDefinition)
 {
     this.Expand(extendedPropertyDefinition);
 }