设置元数据属性

更新或添加满足谓词的元数据属性

SetProperties 用于更新或添加元数据。您可以轻松地将元数据添加到照片、pdf,或者您可以更新或添加数据到 mp3 文件。此代码示例实际上结合了两个操作:添加和更新。如果现有属性满足指定的谓词,则更新其值。如果元数据包中缺少满足谓词的已知属性,则将其添加到适当的包中。

下面的代码片段演示了 SetProperties 方法的基本使用场景。

  1. 打开一个文档
  2. 指定将用于添加/更新元数据属性的谓词
  3. 指定要添加到文件中现有元数据包的值 4.查看实际添加/更新属性的数量
  4. 保存更改

例子

// Constants.InputVsdx is an absolute or relative path to your document. Ex: @"C:\Docs\source.vsdx"
using (Metadata metadata = new Metadata(Constants.InputVsdx))
{
// Set the value of each property that satisfies the predicate:
// property contains the date/time the document was created OR modified
var affected = metadata.SetProperties(
p => p.Tags.Contains(Tags.Time.Created) || p.Tags.Contains(Tags.Time.Modified),
new PropertyValue(DateTime.Now));
Console.WriteLine("Properties set: {0}", affected);
metadata.Save(Constants.OutputVsdx);
}
view raw set-metadata.cs hosted with ❤ by GitHub

因此,我们更新了所有包含文档创建/更新日期的现有元数据属性。如果元数据包不包含此类属性,但它们应该在其结构中,则添加它们。