UpdateProperties
Metadata.UpdateProperties method
Обновляет известные свойства метаданных, удовлетворяющие указанному предикату. Операция является рекурсивной, поэтому она также влияет на все вложенные пакеты.
public int UpdateProperties(Func<MetadataProperty, bool> predicate, PropertyValue value)
Параметр | Тип | Описание |
---|---|---|
predicate | Func`2 | Функция для проверки каждого свойства метаданных на наличие условия. |
value | PropertyValue | Новое значение отфильтрованных свойств. |
Возвращаемое значение
Количество затронутых свойств.
Примечания
Обратите внимание, что GroupDocs.Metadata неявно проверяет тип каждого отфильтрованного свойства. Невозможно обновить свойство со значением неподходящего типа.
Узнать больше
- Дополнительные примеры, демонстрирующие использование этого метода: Обновление метаданных
Примеры
using (Metadata metadata = new Metadata(Constants.InputXlsx))
{
if (metadata.FileFormat != FileFormat.Unknown && !metadata.GetDocumentInfo().IsEncrypted)
{
// Обновить дату/время создания файла, если существующее значение старше 3 дней
var affected = metadata.UpdateProperties(p => p.Tags.Contains(Tags.Time.Created) &&
p.Value.Type == MetadataPropertyType.DateTime &&
p.Value.ToStruct<DateTime>() < threeDaysAgo, new PropertyValue(today));
Console.WriteLine("Affected properties: {0}", affected);
metadata.Save(Constants.OutputXlsx);
}
}
Смотрите также
- delegate Func<T,TResult>
- class MetadataProperty
- class PropertyValue
- class Metadata
- пространство имен GroupDocs.Metadata
- сборка GroupDocs.Metadata