DataContractBase.SetProperty Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
| Nom | Description |
|---|---|
| SetProperty<T>(T, T, String) |
Modifie la propriété en la valeur donnée. |
| SetProperty<T>(T, T, String, Boolean) |
Modifie la propriété en la valeur donnée. |
SetProperty<T>(T, T, String)
Modifie la propriété en la valeur donnée.
Indique si la nouvelle valeur est différente de l’ancienne.
protected void SetProperty<T>(ref T propertyBackingField, T newValue, string propertyName = default);
member this.SetProperty : 'T * 'T * string -> unit
Protected Sub SetProperty(Of T) (ByRef propertyBackingField As T, newValue As T, Optional propertyName As String = Nothing)
Paramètres de type
- T
Type de propriété.
Paramètres
- propertyBackingField
- T
Le champ de soutien de la propriété doit changer.
- newValue
- T
La nouvelle valeur à donner au bien.
- propertyName
- String
Nom de la propriété. Il est recommandé que cette valeur soit codée en dur par l’appelant de méthode, plutôt que d’utiliser une approche moins performante (mais plus adaptée au refactor) comme l’utilisation d’expressions de réflexion ou lambda pour obtenir le nom de propriété. L’inconvénient du codage en dur est la vulnérabilité aux erreurs de type faute de frappe et copier-coller. Cependant, cette vulnérabilité est atténuée par des tests unitaires qui utilisent la réflexion pour vérifier ce paramètre pour toutes les propriétés de la classe de contrat de données. L’idée est qu’il vaut mieux payer la pénalité de performance de réflexion dans les tests unitaires, plutôt que dans le code de production.
S’applique à
SetProperty<T>(T, T, String, Boolean)
Modifie la propriété en la valeur donnée.
Indique si la nouvelle valeur est différente de l’ancienne.
protected bool SetProperty<T>(ref T propertyBackingField, T newValue, string propertyName = default, bool emptyStringIsNull = false);
member this.SetProperty : 'T * 'T * string * bool -> bool
Protected Function SetProperty(Of T) (ByRef propertyBackingField As T, newValue As T, Optional propertyName As String = Nothing, Optional emptyStringIsNull As Boolean = false) As Boolean
Paramètres de type
- T
Type de propriété.
Paramètres
- propertyBackingField
- T
Le champ de soutien de la propriété doit changer.
- newValue
- T
La nouvelle valeur à donner au bien.
- propertyName
- String
Nom de la propriété. Il est recommandé que cette valeur soit codée en dur par l’appelant de méthode, plutôt que d’utiliser une approche moins performante (mais plus adaptée au refactor) comme l’utilisation d’expressions de réflexion ou lambda pour obtenir le nom de propriété. L’inconvénient du codage en dur est la vulnérabilité aux erreurs de type faute de frappe et copier-coller. Cependant, cette vulnérabilité est atténuée par des tests unitaires qui utilisent la réflexion pour vérifier ce paramètre pour toutes les propriétés de la classe de contrat de données. L’idée est qu’il vaut mieux payer la pénalité de performance de réflexion dans les tests unitaires, plutôt que dans le code de production.
- emptyStringIsNull
- Boolean
Un drapeau qui indique quoi faire si newValue est une chaîne vide. Si cette valeur est fixée à vraie, les chaînes vides sont traitées de la même manière que des valeurs nulles. C’est-à-dire que si la valeur existante est nulle et qu’une chaîne vide est définie avec ce drapeau activé, cela n’aura aucun effet.
Retours
Si la propriété a été modifiée. C’est-à-dire si la nouvelle valeur donnée diffère de l’ancienne valeur du bien.