DataGridView默认错误对话框

时间:2015-04-20 08:56:13

标签: c# sql-server datagridview

下面的方法(GetData)给了我这个错误:

  

DataGridView默认错误对话框
      DataGridView中发生以下异常:
      System.ArgumentException:Column' anNo'不属于表_utJM_WOExCycleItem          在System.Data.DataRow.CheckColumn(DataColumn列)
         在System.Data.DataColumnPropertyDescriptor.GetValue(对象组件)
         在System.Windows.Forms.DataGridView.DataGridViewDataConnection.GetValue(Int32 boundColumnIndex,Int32 columnIndex,Int32 rowIndex)
      要替换此默认对话框,请处理DataError事件。

我可以弄清楚出了什么问题。 当表格_utJM_WOExCycle没有状态记录时,我收到此错误' O'或者' N'。当一条记录获得acStatus ON以及程序调用{​​{1}}方法时,我会收到此错误:

  

对字段anNo,acWoex,acIdent,acName(x在_utJM_WOExCycleItem中的记录数)重复出错。

方法:

GetData

2 个答案:

答案 0 :(得分:0)

如果我们查看您的第一个查询,则您没有名称为anNo的任何列。

然后您将此结果集与DataGridView控件绑定,可能您的DataGridView控件的列已映射到anNo列,但在数据源中找不到该列。

在设计模式中选择DataGridView控件(与_utJM_WOExCycle绑定)并检查已定义的列,DataPropertyName设置为anNo的列,那一栏是实际问题。

答案 1 :(得分:0)

在炸毁我的整个 EntityFramework 连接并再次执行该过程之后,我遇到了这个模棱两可的错误。

我能够确定我的问题是SQL Server如何存储我的图像..不要使用Image类型,它已被弃用,它具有byte []类型并另存为0x433 ...

将图像存储类型更改为varbinary(Max),它将保存为0xFFD ...解决了该问题。

回顾:

  1. 检查实体框架连接
  2. 将图像类型另存为Varbinary(Max)