Extrait de code XML : Spécifier une valeur par défaut pour un paramètre de type System.DateTime
Dernière modification : jeudi 15 avril 2010
S’applique à : SharePoint Server 2010
Certaines méthodes ont des signatures complexes. Par exemple, le service Web permettant d’obtenir des clients SAP peut prendre six paramètres, dont trois qui peuvent être des structures comportant des paramètres secondaires. Pour simplifier l’appel de ces méthodes, le Service BDC (Business Data Connectivity) vous permet de spécifier des valeurs par défaut pour des paramètres dans les métadonnées. De cette manière, les utilisateurs peuvent appeler une logique métier prédéfinie sans s’occuper de la création des paramètres.
L'utilisateur peut remplacer n'importe quel paramètre d'entrée pour lequel vous définissez une valeur DefaultValue. L'utilisateur doit spécifier tous les paramètres d'entrée qui n'ont pas de valeur DefaultValue si ces paramètres sont obligatoires.
Pour chaque type primitif abstrait d’un objet TypeDescriptor, vous pouvez définir plusieurs valeurs par défaut, chacune correspondant à un objet MethodInstance particulier. Au moment de l’exécution, selon l’objet MethodInstance que le client exécute, une instance du paramètre est créée en fonction des valeurs par défaut correspondantes.
La rubrique DefaultValue, élément dans DefaultValues (schéma BDCMetadata) répertorie les formats acceptés permettant de fournir les valeurs par défaut pour différents types. Comme indiqué dans cette rubrique, pour fournir des valeurs par défaut pour des méthodes Web qui ont des paramètres d’entrée de type System.DateTime, vous devez passer la valeur au format DateTimeFormatInfo.UniversalSortableDateTimePattern. Le code suivant constitue un exemple.
Notes
Si vous utilisez un format DateTime incorrect dans la valeur par défaut, vous obtenez l’erreur suivante lors de l’importation du fichier de définition d’application : Impossible d’analyser la valeur par défaut pour le type « System.datetime ». Assurez-vous que le format est correct et n’utilisez pas de guillemets autour de la valeur.
Exemple
<DefaultValues>
<DefaultValue MethodInstanceName="InvoiceFinderInstance"
Type="System.DateTime">2007-01-11 00:00:00Z
</DefaultValue>
</DefaultValues>