У меня есть поле в базе данных «IsActive», которое по умолчанию «Null». Теперь я хочу обновить поле один раз и установить его в true. Теперь, когда поле установлено в true, мне нужно запретить дальнейшие модификации. Любая помощь пожалуйста!Ограничение для обновления поля в модели данных сущности в Silvelight
0
A
ответ
0
Для каждого свойства, которое RIA Services создает в сущности, RIA Services также создает несколько неполных меток, вызываемых при изменении значения свойства для переопределения, например. Для вашего IsActive собственности, RIA Services генерирует:
Private Partial Sub OnIsActiveChanging(ByVal value As Boolean)
End Sub
Private Partial Sub OnIsActiveChanged()
End Sub
Вы найдете эти окурки в файл, который RIA Services создает при компиляции (в папке Generated_Code в папке проекта Silverlight, он не будет включен в сам проект).
Невозможно «отменить» изменение, но вы можете ввести немного логики, чтобы установить значение обратно самостоятельно, например. в частичном классе для вашей организации:
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