Невозможно привести объект типа «System.Data.DataRowView» к типу «System.IConvertible». - PullRequest
3 голосов
/ 24 февраля 2012

Я использую в коде C #

int i = Convert.ToInt32(ddlDivisionId.SelectedValue);

, в то время этот тип ошибки накопился ..

Unable to cast object of type 'System.Data.DataRowView' to type 'System.IConvertible'

как я могу ее решить?

Пожалуйста, пожалуйстапомощь

Ответы [ 2 ]

6 голосов
/ 24 февраля 2012

Похоже, ваш ddlDivisionId.SelectedValue возвращает DataRowView.Я предполагаю, что вы привязали DataTable или аналогичны вашему выпадающему списку (предположим, это то, на что мы смотрим).

В этом случае вам нужно будет обработать ddlDivisionId.SelectedValue как DataRowView (возможно, приведение к этому объектуво-первых), чтобы получить значение из этого ... я предполагаю что-то вроде:

int i = Convert.ToInt32(((DataRowView)ddlDivisionId.SelectedValue)["id"]);

Здесь вы должны заменить «id» на любое имя вашего поля в вашей таблице данных, которое вы хотите получитькак целое число

4 голосов
/ 08 июня 2016
int i = Convert.ToInt32(ddlDivisionId.SelectedValue.ToString());

добавьте .ToString в последнюю очередь это будет работать

...