无法将类型为“System.Data.DataRowView”的对象强制转换为“System.IConvertible”。 [英] Unable to cast object of type 'System.Data.DataRowView' to type 'System.IConvertible'.
问题描述
当我在使用SelectIndexchanged属性时在Combobox中我收到错误
SSettingsEntity entity = facade.Get_CashPrefix(Convert.ToInt32(cmbSettings.SelectedValue));
无法将'System.Data.DataRowView'类型的对象强制转换为'System.IConvertible'。
请参阅 - 无法将'System.Data.DataRowView'类型的对象强制转换为'System.IConvertible' [ ^ ]。
< blockquote class =FQ>Quote:看起来你的
ddlDivisionId.SelectedValue
正在返回一个DataRowView。我假设您绑定了一个DataTable
或类似于您的下拉列表(假设这是我们正在查看的内容)。
在这种情况下,您需要将ddlDivisionId.SelectedValue
视为DataRowView
(可能首先转换为该对象) )从中获取价值...我假设如下:
int i = Convert.ToInt32(((DataRowView)ddlDivisionId.SelectedValue)[ id]);
在这里,您应该将id替换为您想要以整数形式输出的数据表中字段的名称。
所以,不要像下面那样...
Convert.ToInt32(cmbSettings.SelectedValue)
执行类似下面的操作...
Convert.ToInt32(((DataRowView)cmbSettings.SelectedValue)[跨度> id ]);
这里 id
是你想要阅读的字段。
When I was Using SelectIndexchanged Property In Combobox i got error here
SSettingsEntity entity = facade.Get_CashPrefix(Convert.ToInt32(cmbSettings.SelectedValue));
Unable to cast object of type 'System.Data.DataRowView' to type 'System.IConvertible'.
Refer - Unable to cast object of type 'System.Data.DataRowView' to type 'System.IConvertible'[^].
Quote:It looks like your
ddlDivisionId.SelectedValue
is returning a DataRowView. I assume you bound aDataTable
or similar to your dropdown list (assuming that is what we are looking at).
In this case you will need to treat theddlDivisionId.SelectedValue
as aDataRowView
(probably casting to that object first) to get the value out of it... I assume something like:
int i = Convert.ToInt32(((DataRowView)ddlDivisionId.SelectedValue)["id"]);
Here you should replace "id" with whatever the name of your field is in your datatable that you want to get out as an integer.
So, instead of doing like below...
Convert.ToInt32(cmbSettings.SelectedValue)
do something like below...
Convert.ToInt32(((DataRowView)cmbSettings.SelectedValue)["id"]);
Hereid
is the field you want to read.
这篇关于无法将类型为“System.Data.DataRowView”的对象强制转换为“System.IConvertible”。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!