DataContractBase.SetProperty メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
SetProperty<T>(T, T, String) |
プロパティを指定した値に変更します。 |
SetProperty<T>(T, T, String, Boolean) |
プロパティを指定した値に変更します。 |
SetProperty<T>(T, T, String)
プロパティを指定した値に変更します。
新しい値が古い値と異なるかどうかを返します。
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)
型パラメーター
- T
プロパティの型。
パラメーター
- propertyBackingField
- T
変更するプロパティの背景フィールドです。
- newValue
- T
プロパティに指定する新しい値です。
- propertyName
- String
プロパティの名前。 この値については、リフレクションまたはラムダ式を使用してプロパティ名を取得するといったようなパフォーマンスの低いアプローチ (ただし、よりリファクター フレンドリーである) を使用するのではなく、メソッドの呼び出し元によってハードコード化されることをお勧めします。 ハードコーディングの短所は、入力エラーやコピーおよび貼り付けの種類のエラーに対して脆弱であるということです。 ただし、この脆弱性は、リフレクションを使用してすべてのデータ コントラクト クラス プロパティを対象に、このパラメーターを検証する単体テストによって軽減されます。 実稼働コードでリフレクション パフォーマンスが低下するより、単体テストでその状況が発生する方が有利であるという考え方です。
適用対象
SetProperty<T>(T, T, String, Boolean)
プロパティを指定した値に変更します。
新しい値が古い値と異なるかどうかを返します。
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
型パラメーター
- T
プロパティの型。
パラメーター
- propertyBackingField
- T
変更するプロパティの背景フィールドです。
- newValue
- T
プロパティに指定する新しい値です。
- propertyName
- String
プロパティの名前。 この値については、リフレクションまたはラムダ式を使用してプロパティ名を取得するといったようなパフォーマンスの低いアプローチ (ただし、よりリファクター フレンドリーである) を使用するのではなく、メソッドの呼び出し元によってハードコード化されることをお勧めします。 ハードコーディングの短所は、入力エラーやコピーおよび貼り付けの種類のエラーに対して脆弱であるということです。 ただし、この脆弱性は、リフレクションを使用してすべてのデータ コントラクト クラス プロパティを対象に、このパラメーターを検証する単体テストによって軽減されます。 実稼働コードでリフレクション パフォーマンスが低下するより、単体テストでその状況が発生する方が有利であるという考え方です。
- emptyStringIsNull
- Boolean
newValue がたまたま空の文字列になった場合の対処方法を示すフラグです。 この値を true に設定すると、空の文字列は null 値と同様に扱われます。 つまり、既存の値が null であり、このフラグをオンにした状態で空の文字列を設定した場合、それによる影響はありません。
戻り値
プロパティが変更されたかどうか。 つまり、与えられた新しい値が、プロパティの古い値と異なるかどうか。