0
"IsActive"데이터베이스에 기본적으로 "Null"필드가 있습니다. 이제 필드를 한 번 업데이트하고 true로 설정하려고합니다. 일단 필드가 true로 설정되면 더 이상의 수정을 금지해야합니다. 어떤 도움을주십시오!Silveight에서 엔터티 데이터 모델의 필드를 업데이트 제한
"IsActive"데이터베이스에 기본적으로 "Null"필드가 있습니다. 이제 필드를 한 번 업데이트하고 true로 설정하려고합니다. 일단 필드가 true로 설정되면 더 이상의 수정을 금지해야합니다. 어떤 도움을주십시오!Silveight에서 엔터티 데이터 모델의 필드를 업데이트 제한
RIA Services는 엔티티에서 생성하는 각 속성에 대해 속성 값이 변경 될 때 호출되는 몇 가지 부분 메소드 스텁을 생성합니다. 당신이 isActive 속성에 대해 RIA 서비스를 생성 :
Private Partial Sub OnIsActiveChanging(ByVal value As Boolean)
End Sub
Private Partial Sub OnIsActiveChanged()
End Sub
당신은 RIA 서비스는 당신이 당신의 실버 라이트 프로젝트 폴더에 Generated_Code 폴더에 (컴파일 할 때 생성하는 파일에서 이러한 스텁을 찾을 수 있습니다, 그것은이에 포함되지 않습니다 프로젝트 자체).
변경 사항을 취소하는 방법은 없지만 약간의 로직을 넣어서 직접 값을 설정할 수 있습니다 (예 : 귀하의 단체를위한 부분 수업에서 :
Private _setBackToTrue As Boolean
Private Sub OnIsActiveChanging(ByVal value As Boolean)
If Not value AndAlso Me.IsActive Then
_setBackToTrue = True
End If
End Sub
Private Sub OnIsActiveChanged()
If _setBackToTrue Then
Me.IsActive = True
_setBackToTrue = False
End If
End Sub