2010-09-23 64 views
1

我收到错误没有从对象类型System.Data.DataRowView到已知托管提供程序本机类型的映射,每次单击我的按钮..这是我的代码..System.Data.DataRowView在将行插入到SQL Server时发生异常

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

    Dim insertCommand = <xml> 
    INSERT INTO returns(
     Department, 
     Purpose, 
     Item_details, 
     Requested_by, 
     Approved_by, 
     ReturnDate 
    ) 
    SELECT 
     Department, 
     Purpose, 
     Items_Details, 
     Requested_by, 
     Approved_by, 
     Date 
    FROM borrow 
    WHERE ID = @BorrowID; 
</xml> 

    Dim param = cmd.CreateParameter() 
    param.ParameterName = "@BorrowID" 
    param.Value = ListBox1.SelectedValue 


    cmd.CommandText = insertCommand.Value 
    cmd.Parameters.Add(param) 

    cmd.Connection = con 
    Try 
     con.Open() 
     cmd.ExecuteNonQuery() 

    Catch SqlExceptionErr As Exception 
     MsgBox(SqlExceptionErr.ToString) 


    Finally 
     con.Close() 
    End Try 

End Sub 
+0

-1您的问题的标题不是信息。建议将其更改为“将行插入到SQL Server时出现”System.Data.DataRowView异常“。 – 2010-09-23 06:46:23

+0

你检查ListBox1.SelectedValue的值吗?我假设borrow.ID列是一个整数。 ListBox1.SelectedValue是一个整数吗? – 2010-09-23 06:48:24

+0

嗨,感谢您回复^^,对不起,迟到的回复刚刚从学校回家..做了我已经改变了..是的,我的Borrow.ID列是一个整数。我没有添加我的ID列在回报和借用表中,因为他们都是自动增量..我想我应该改变这部分WHERE ID = @BorrowID WHERE日期= @ModifiedDate,以便当我传输选定的行,日期在返回表中的列将被更新..你是什么意思ListBox1.SelectedValue一个整数?..你的意思是显示成员?..我的Listbox1.SelectedValue绑定到借用表并具有部门的显示成员。 – demic0de 2010-09-23 13:20:08

回答

0

Borrow.Id需要绑定到您的ListBox.ValueMember。

+0

嗨tnx帮助我..真的很感激..我已经完成了我的项目..我会做另一个项目克拉,所以如果我有任何问题,希望你能帮助我..查... – demic0de 2010-09-29 20:08:53