Динамические данные ASP.net - OnPropertyChanging не обновляет другие столбцы - PullRequest
0 голосов
/ 15 июля 2009

Вот мой код:

 partial void OnisApprovedChanging(bool value)
 {            
    this.dateApproved = DateTime.Now;         
 }

'dateApproved' обновляется в бизнес-логике, но это изменение не применяется к таблице базы данных. Я видел несколько примеров, когда столбцы DateUpdated обновляются всякий раз, когда выполняется любое изменение таблицы, но меня интересует только обновление отметки времени при обновлении этого поля, и я не уверен, что лучше всего получить доступ к DataContext из этой области.

Нужно ли создавать экземпляр Data-контекста и обновлять его вручную?

РЕДАКТИРОВАТЬ Провел дополнительное исследование и обнаружил, что некоторые блоги предлагают добавить бизнес-логику при обновлении, например:

public partial class DataContext : System.Data.Linq.DataContext
{
   partial void Updateaccount(account instance)
   {
       //business logic here      
   }
}

Однако я не могу определить какой-либо способ выяснить, изменились ли определенные поля. Есть идеи?

1 Ответ

0 голосов
/ 15 июля 2009

Обнаружил, что это способ получить исходную сущность и сделать сравнения.

partial void Updateaccount(account instance)
{            
   account acctPriorToUpdate = accounts.GetOriginalEntityState(instance);
   if (instance.isApproved != acctPriorToUpdate.isApproved)
   {
       //Do Stuff
   }            
   this.ExecuteDynamicUpdate(instance);   
}
...