DataContractBase.SetProperty 메서드

정의

오버로드

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이고 빈 문자열에서 이 플래그가 설정되어 있으면 아무런 영향을 미치지 않습니다.

반환

속성이 변경되었는지, 즉 지정된 새 값이 속성의 이전 값과 다른지를 나타냅니다.

적용 대상