VCardCard
内容
[
隐藏
]
VCardCard class
表示从VCard文件中提取的单张卡片。
public class VCardCard : VCardRecordset
特性
姓名 | 描述 |
---|---|
CalendarRecordset { get; } | 获取日历记录。 |
CommunicationRecordset { get; } | 获取通讯记录。 |
Count { get; } | 获取元数据属性的数量。 |
DeliveryAddressingRecordset { get; } | 获取收货地址记录。 |
ExplanatoryRecordset { get; } | 获取解释记录。 |
ExtensionRecords { get; } | 获取私有分机记录。 |
GeneralRecordset { get; } | 获取一般记录。 |
GeographicalRecordset { get; } | 获取地理记录。 |
IdentificationRecordset { get; } | 获取标识记录。 |
Item { get; } | 获取MetadataProperty 具有指定名称. |
Keys { get; } | 获取元数据属性名称的集合。 |
MetadataType { get; } | 获取元数据类型。 |
OrganizationalRecordset { get; } | 获取组织记录。 |
PropertyDescriptors { get; } | 获取描述符集合,其中包含有关可通过 GroupDocs.Metadata 搜索引擎访问的属性的信息。 |
SecurityRecordset { get; } | 获取安全记录。 |
方法
姓名 | 描述 |
---|---|
AddProperties(Func<MetadataProperty, bool>, PropertyValue) | 添加满足指定谓词的已知元数据属性。 该操作是递归的,因此它也会影响所有嵌套包。 |
Contains(string) | 确定包是否包含具有指定名称的元数据属性。 |
FilterByGroup(string) | 按作为参数传递的组名过滤所有 vCard 记录。 有关详细信息,请参阅方法. |
FilterHomeTags() | 过滤所有标有 HOME 标签的 vCard 记录。 |
FilterPreferred() | 过滤首选记录。 |
FilterWorkTags() | 过滤所有标有 WORK 标签的 vCard 记录。 |
virtual FindProperties(Func<MetadataProperty, bool>) | 查找满足指定谓词的元数据属性。 搜索是递归的,因此它也会影响所有嵌套包。 |
GetAvailableGroups() | 获取可用的组名。 |
GetEnumerator() | 返回一个遍历集合的枚举器。 |
virtual RemoveProperties(Func<MetadataProperty, bool>) | 删除满足指定谓词的元数据属性。 |
virtual Sanitize() | 从包中删除可写元数据属性。 该操作是递归的,因此它也会影响所有嵌套包。 |
SetProperties(Func<MetadataProperty, bool>, PropertyValue) | 设置满足指定谓词的已知元数据属性。 该操作是递归的,因此它也会影响所有嵌套包。 此方法是以下方法的组合AddProperties 和UpdateProperties 如果现有属性满足谓词,则更新其值。 如果包中缺少满足谓词的已知属性,则将其添加到包中。 |
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) | 更新满足指定谓词的已知元数据属性。 该操作是递归的,因此它也会影响所有嵌套包。 |
评论
了解更多
例子
此示例说明如何使用 vCard 属性过滤器。
public static void Run()
{
using (Metadata metadata = new Metadata(Constants.InputVcf))
{
var root = metadata.GetRootPackage<VCardRootPackage>();
foreach (var vCard in root.VCardPackage.Cards)
{
// 打印最喜欢的工作电话号码和工作电子邮件
var filtered = vCard.FilterWorkTags().FilterPreferred();
PrintArray(filtered.CommunicationRecordset.Telephones);
PrintArray(filtered.CommunicationRecordset.Emails);
}
}
}
private static void PrintArray(string[] values)
{
if (values != null)
{
foreach (string value in values)
{
Console.WriteLine(value);
}
}
}