IProviderMetadataUpgradeCallback::OnItemMetadataDeserialized
Se produit une fois pour chaque élément lu à partir des métadonnées sérialisées.
HRESULT OnItemMetadataDeserialized(
IItemMetadata * pItemMetadata,
LPCWSTR * pcszExtraFieldNames,
IFieldValue ** ppExtraFieldValues,
BYTE cExtraFields);
Paramètres
- pItemMetadata
[in] Métadonnées de l'élément au format mis à niveau.
- pcszExtraFieldNames
[in, size_is(cExtraFields)] Noms de champs supplémentaires qui existent dans les métadonnées sérialisées mais qui ne sont pas spécifiés dans la liste des champs personnalisés du nouveau schéma de métadonnées. Attribuez la valeur NULL si cExtraFields est égal à 0.
- ppExtraFieldValues
[in, size_is(cExtraFields)] Valeurs des champs supplémentaires qui existent dans les métadonnées sérialisées mais qui ne sont pas spécifiés dans la liste des champs personnalisés du nouveau schéma de métadonnées. Attribuez la valeur NULL si cExtraFields est égal à 0.
- cExtraFields
[in] Nombre de champs supplémentaires qui existent dans les métadonnées sérialisées mais qui ne sont pas spécifiés dans la liste des champs personnalisés du nouveau schéma de métadonnées.
Valeur de retour
S_OK
Codes d'erreur déterminés par le fournisseur
Notes
Lorsqu'un fournisseur reçoit cette méthode, il peut examiner les champs supplémentaires répertoriés dans pcszExtraFieldNames et ppExtraFieldValues et apporter les modifications nécessaires pour corriger les métadonnées d'élément, par exemple fusionner les données d'un champ supplémentaire de l'ancien schéma dans un champ existant du schéma mis à niveau contenu dans pItemMetadata.