我有以下应用程序,它根据搜索加载客户记录。然后可以使用显示的字段添加新发票。
但是当我去添加一个新的发票记录时,我在 invoiceNumber 列上得到一个“noNullAllowedException”。我不确定为什么会收到此错误,因为在添加新发票时,我将默认值 -1 更改为“11”,例如并更改其他默认发票选项。
我检查了列属性以检查它是否源于冲突的设置,但它似乎很好。有谁知道我在哪里验证错误,它给出了这个结果?
这是发票添加方法背后的代码:
private void addInvoice_Click(object sender, EventArgs e)
{
// Check that the line item data is valid
if (IsValidLineItem())
{
// Add a new row to the InvoiceLineItems table
lineItemsBindingSource.AddNew();
// Set the values of the row in the data grid
int rowIndex = lineItemsDataGridView.Rows.Count - 1;
DataGridViewRow row = lineItemsDataGridView.Rows[rowIndex];
DataGridViewCell cell = row.Cells[0];
cell.Value = 1;
cell = row.Cells[1];
cell.Value = productIDComboBox.SelectedValue; // not Index
cell = row.Cells[2];
cell.Value = unitPriceTextBox.Text;
cell = row.Cells[3];
cell.Value = quantityTextBox.Text;
cell = row.Cells[4];
cell.Value = Convert.ToDecimal(unitPriceTextBox.Text) * Convert.ToDecimal(quantityTextBox.Text);
// Save the line item to the table
lineItemsBindingSource.EndEdit();
// Calculate the invoice total
this.GetInvoiceTotal();
// Prepare for the next entry
quantityTextBox.Text = "";
quantityTextBox.Focus();
}
}