-3

我想通过自动增量 ID 搜索人员(textbox and one button)。我dataset用过

Fill,Getdata --> configure

SQL 语句:

SELECT ID, FirstName, LastName, ContactNo, Address, Date, NameOfJob, OtherJob,
Impression, BackPage, NameOfPage, PaperSize, PrintingSize,
DesignRupees, JobRupees, Matter, BlackPlate, BlackPlateRupees, SinglePlate, 
SinglePlateRupees, MultiPlate, MultiPlateRupees, Platename, 
Lamination, Creasing, Binding, Other, Total, Receive, Due, LastRemaining
FROM bill WHERE  ID=@ID

之后我运行了程序,然后显示 2 个错误:

  1. 无法从字符串转换为十进制
  2. WindowsFormsApplication9.DataSet1TableAdapters.billTableAdapter.Fill(WindowsFormsApplication9.DataSet1.billDataTable, decimal) has some invalid arguments此行中错误的最佳重载方法匹配

    this.billTableAdapter.Fill(this.DataSet1.bill, txt_search.Text);

4

2 回答 2

0

所以你的错误是:

cannot convert from string to decimal

WindowsFormsApplication9.DataSet1TableAdapters.billTableAdapter.Fill(WindowsFormsApplication9.DataSet1.billDataTable, decimal);

如果您查看您要在该Fill()方法中添加的内容:

this.billTableAdapter.Fill(this.DataSet1.bill, txt_search.Text);

您的错误告诉您的是它无法将字符串转换为小数。您的填充方法需要一个小数作为它的第二个参数,但您提供的是一个字符串 ( txt_search.Text)。

您需要先将字符串转换/解析为小数,然后.Fill()使用此值调用您的方法。

看看decimal.Parse()decimal.TryParse()

于 2012-06-29T06:27:46.607 回答
0

第二个参数应该是decimal,但您传递的string值是txt_search.Text.

因此,您可以将其转换为十进制:

this.billTableAdapter.Fill(this.DataSet1.bill, (decimal)txt_search.Text);

或者

this.billTableAdapter.Fill(this.DataSet1.bill, decimal.Parse(txt_search.Text));
于 2012-06-29T06:28:46.607 回答