Partager via


DefaultValue

Certaines méthodes ont des signatures complexes. Par exemple, le service Web permettant d'obtenir les clients SAP peut utiliser six paramètres, dont trois qui peuvent être des structures comportant des paramètres secondaires. Pour faciliter la tâche des utilisateurs qui appellent ces méthodes, le catalogue de données métiers vous permet de spécifier des valeurs par défaut pour les paramètres dans les métadonnées. De cette manière, les utilisateurs peuvent appeler la 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 avez défini 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, un paramètre est instancié selon les valeurs par défaut correspondantes.

Working with Nullable Types

Lors de la définition d'une valeur DefaultValue pour les objets System.Nullable, TypeDescriptor, NE définissez PAS le type de DefaultValue en tant que System.Nullable. Si vous omettez la valeur par défaut, le catalogue de données métiers affecte la valeur NULL ; si vous définissez une valeur par défaut, c'est la valeur par défaut explicite qui est passée.

Good example

<Parameter Name="1" Direction="In">
<TypeDescriptor Name="X" TypeName="System.Nullable[[LobService.BugEnumTest, PSBugWS]]" AssociatedFilter="test">
<DefaultValues>
<DefaultValue MethodInstanceName="Finder" Type="LobService.BugEnumTest, PSBugWS">Two</DefaultValue>
</DefaultValues>
</TypeDescriptor>
</Parameter>

Bad example

<Parameter Name="1" Direction="In">
<TypeDescriptor Name="X" TypeName="System.Nullable[[LobService.BugEnumTest, PSBugWS]]" AssociatedFilter="test">
<DefaultValues>
<DefaultValue MethodInstanceName="Finder" Type="System.Nullable[[LobService.BugEnumTest, PSBugWS]]">Two</DefaultValue>
</DefaultValues>
</TypeDescriptor>
</Parameter>

Exemple

<DefaultValues>
   <DefaultValue MethodInstanceName="ProductFinderInstance" 
      Type="System.Int32">0</DefaultValue>
</DefaultValues>

Schéma

Enfant Type Se produit Par défaut Limites / Valeurs admises Description

#text

Texte

1..1

Longueur min. : 1

Valeur par défaut.

Pour le type DateTime, la valeur est une chaîne au format DateTimeFormatInfo.UniversalSortableDateTimePattern.

Si le type est une sous-classe de Enum, la valeur est la représentation sous forme de chaîne de la valeur d'énumération.

Pour le type GUID, la valeur utilise le format « XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ».

Si le type est « primitif » (Int16, Int32, Int64, Single, Double, Decimal, Boolean, String, Byte, etc.), la valeur est une représentation du type sous forme de chaîne (nous utilisons XmlReader.ReadElementContentAsString().)

Pour tout autre type sérialisable, la valeur est une chaîne binaire codée en base 64.

MethodInstanceName

Attribut (String)

1..1

Nom de l'instance MethodInstance à laquelle s'applique cette valeur DefaultValue.

Type

Attribut (System.String)

1..1

System.Int16

System.Int32

System.Int64

System.Single

System.Double

System.Decimal

System.Boolean

System.String

System.Byte

System.UInt16

System.UInt32

System.UInt64

System.Guid

System.String

System.DateTime

Tout autre type sérialisable (par exemple où Type.IsSerializable == true)

Type de la valeur par défaut.

Voir aussi

Autres ressources

Exemple SQL Server 2000 AdventureWorks
Procédure : utiliser le modèle objet Runtime
Procédure : mise en route de l'utilisation du modèle objet Administration
Forum aux questions : catalogue de données métiers
Catalogue de données métiers : glossaire