0

这是我的代码:

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

'dateApproved' 在业务逻辑中更新,但此更改未应用于数据库表。我已经看到了一些示例,其中每当对表进行任何编辑时都会更新 DateUpdated 列,但我只对更新此字段时更新时间戳感兴趣并且我不确定访问的最佳方式此范围内的 DataContext。

我需要实例化数据上下文并手动更新吗?

编辑做了一些更多的研究,发现一些博客建议在更新时添加业务逻辑,如下所示:

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

但是,我无法确定任何方法来确定特定字段是否已更改。有任何想法吗?

4

1 回答 1

0

发现这是获取原始实体并进行比较的方法。

partial void Updateaccount(account instance)
{            
   account acctPriorToUpdate = accounts.GetOriginalEntityState(instance);
   if (instance.isApproved != acctPriorToUpdate.isApproved)
   {
       //Do Stuff
   }            
   this.ExecuteDynamicUpdate(instance);   
}
于 2009-07-15T03:15:39.987 回答