vb.net - VB.NET 数据集“值已存在”处理
问题描述
我正在使用 VB.NET 和 Visual Studio 2017。我有一个数据集,它有两列:ID 和 ToolDiameter。两列都必须是唯一的,并且“唯一”属性设置为“真”。
数据手动输入到数据集中。输入重复的 ToolDiameter 时,我收到错误 System.Data.ConstraintException: 'Column 'ToolDiameter' is constrained to be unique。值“57”已经存在。
我希望它向用户显示一个 MessageBox,通知该工具已经存在,但我现在知道在哪里添加代码,因为我使用的是 BindingNavigator 和 DataGridView。
最好的问候, SilverR
解决方案
好吧,我的错,忘了提到我尝试使用文本框(数据集详细信息)输入新数据。这就是为什么我没有看到错误对话框。我用 DataGridView 解决了这个错误,如下所示:
Private Sub PunchToolsRODataGridView1_DataError(sender As Object, e As DataGridViewDataErrorEventArgs) Handles PunchToolsRODataGridView1.DataError
MessageBox.Show("Entry error!", "Error")
If (e.Context = DataGridViewDataErrorContexts.Commit) Then
MessageBox.Show("Value already exists.", "Error")
End If
End Sub
但是使用 TextBox 的问题仍然存在。
推荐阅读
- javascript - 尝试将我的“aws-amplify”包导入我的入口点时收到 JSLint 错误
- java - 如何从 BarChart MPAndroid 图表中删除十进制值?我尝试了几种方法但没有奏效
- javascript - 排序/创建具有重叠的偏好列表的排名
- xslt - 如何从应用模板中排除一个模板?
- python - 为什么 sqlite3 快捷函数被称为“非标准”?
- javascript - 如何使用值重定向并为选择输入使用选项文本?
- php - 带有上传文件附件的表格
- javascript - 制表符不适用于远程分页和 ajaxURLGenerator
- python - 从 DataFrames 列表中创建一个具有最佳值的 DataFrame
- c++ - 矩阵构造函数的大括号封闭初始化程序在 std::complex 类型中失败
>