【发布时间】:2013-10-31 00:40:32
【问题描述】:
我使用 XtraGrid 和 LINQ2SQL 作为数据源,但遇到了一些问题。
有时在数据库中发布更改时会发生数据验证错误(例如,在唯一索引违规或触发错误或 FK 不存在或您尝试删除某人的父级等情况下)。在这种情况下,我需要通知用户并让他能够更正数据或恢复行。
不幸的是,我无法找到放置代码并使其成为可能的最佳位置。
在GridView.ValidateRow 事件主体内部,尚未更改任何基础数据(dataContext.SubmitChanges() 调用不会导致任何更改)。
GridView.RowUpdated 事件看起来是保存对数据库的更改的好地方,但我无法保持错误行的焦点(如果用户通过将焦点移动到另一行来导致行更新,那么焦点将在此之后消失事件处理程序完成)。
在 GridView 中插入/更新/删除操作时处理数据库错误的常见解决方案是什么?
【问题讨论】:
标签: gridview devexpress xtragrid