Ошибка источника данных: "невозможно выполнить привязку к свойству или столбцу"
Я работаю над базой данных в C#, когда я нажимаю на дисплее кнопку, я получаю сообщение об ошибке:
ошибка:
Не удается выполнить привязку к свойству или столбцу LastName в источнике данных. Имя параметра: dataMember
код:
private void Display_Click(object sender, EventArgs e)
{
Program.da2.SelectCommand = new SqlCommand("Select * From Customer", Program.cs);
Program.ds2.Clear();
Program.da2.Fill(Program.ds2);
customerDG.DataSource = Program.ds2.Tables[0];
Program.tblNamesBS2.DataSource = Program.ds.Tables[0];
customerfirstname.DataBindings.Add(new Binding("Text", Program.tblNamesBS2, "FirstName"));
customerlastname.DataBindings.Add(new Binding("Text", Program.tblNamesBS2, "LastName")); //Line Error occurs on.
}
Не уверен, что это означает, может ли кто-нибудь помочь, если я прокомментирую последние две строки, которые он отобразит правильно.
4 ответов
это означает, что ваш datatable не находит имя столбца фамилия, которая находится в вашей базе данных..
в вашем случае вы заполняете свой набор данных ds2..
Program.da2.Fill(Program.ds2);
и затем вы привязываете свой источник данных к "программе", как это..
Program.tblNamesBS2.DataSource = Program.ds.Tables[0];
это должно понравиться..
Program.tblNamesBS2.DataSource = Program.ds2.Tables[0];
потому что ниже строки вы ищете значение из программы.tblNamesBS2, который привязан к 'ds' и именно поэтому столбец не является ther в "ds".
customerfirstname.DataBindings.Add(new Binding("Text", Program.tblNamesBS2, "FirstName"));
customerlastname.DataBindings.Add(new Binding("Text", Program.tblNamesBS2, "LastName"));
у меня была такая же проблема, и это было потому, что столбцы в обеих моих таблицах имели одинаковые имена столбцов. Например:
- мое имя базы данных
Assets
; - имя таблицы
Property
и второе имя таблицы былоPlants
; - первые имена столбцов в обеих таблицах были
asset_number
; Это дало ошибку, которую вы описали выше, но моя сказалаasset_number
.
решение: я изменил имена столбцов в моей таблице Plants
в asset_number1
и тогда у него не было проблем. (Мне пришлось удалить все мои старые колонки в Plants
чтобы повторить новые столбцы.)
Я столкнуться с той же проблемой, где мне нужно изменить имя в таблице, но Я не менял имена столбцов в файле привязки данных. решением было изменение имен путем замены измененного имени.