【发布时间】:2011-04-16 14:29:26
【问题描述】:
我有一个表(申请人),并且使用 GridView 不同的人将更改此 GridView 中的值。我创建了另一个表(历史),我想用它来记录这些更改。现在我有这个来捕捉变化:
Private Sub grdBusinessServices_RowUpdating(sender As Object, e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles grdBusinessServices.RowUpdating
Dim dbContext As pbu_checklistEntities = New pbu_checklistEntities
Using dbContext
Dim HistoryRecord As New History
End Using
End Sub
我不确定如何捕捉正在变化的信息?在伪代码中,我想做类似的事情:
HistoryRecord.ChangedValues = grdBusinessServices.ChangedValues
【问题讨论】:
-
您可以使用 SQL 获取旧值并将其作为记录添加到历史记录中。这对您有用吗?
-
嗯...我很想知道您将如何做到这一点,但我更愿意避免使用直接 SQL,因为我通过 LINQ 做所有其他事情。
-
不幸的是,我不擅长 VB.NET 和 LINQ .. 但我可以向您保证,这是一个非常简单的 INSERT 命令.. 如果您擅长 LINQ,您只需检索其中的值类型(申请人)或局部变量的对象,您要记录的数据以及发生更新时检查值是否相同然后什么也不做,如果输入了新值,则发送您刚刚存储的值将您的对象或局部变量添加到 LINQ/ADO.NET 方法,该方法将在历史记录表中插入此记录。我会尝试进行一些搜索,并会及时通知您。
标签: asp.net vb.net entity-framework gridview logging