Набор данных ASP.NET getdataBy Не удалось включить ограничения.Одна или несколько строк содержат значения, нарушающие ограничения ненулевого, уникального или внешнего ключа - PullRequest
2 голосов
/ 16 мая 2011

привет у меня очень простая веб-форма у меня есть кнопка и вид сетки в этой форме и набор данных, который содержит связанные таблицы bill, docket, docket_bill и т. д.

При нажатии кнопки я использую следующий код

  protected void button_click(object sender, EventArgs e)
{
billTableAdapter Billta = new billTableAdapter();
gridview1.datasource = Billta.getTop20Bills();
gridview1.databind()'
}

Теперь, когда я нажимаю на кнопку, я получаю следующую ошибку

"Не удалось включить ограничения. Один или больше строк содержат значения, нарушающие ненулевой, уникальный или внешний ключ ограничения "

Однако, когда я изменяю код на

 protected void button_click(object sender, EventArgs e)
    {
    billTableAdapter Billta = new billTableAdapter();
    gridview1.datasource = Billta.getdata();
    gridview1.databind()'
    }

Работает нормально. billTa.getData () получает все строки из набора данных и отображается в виде таблицы. но когда я добавляю запрос и выбираю только несколько столбцов, это дает мне вышеупомянутую ошибку.

Есть идеи, что здесь не так?

SQL Scripts for getdata() = select * from bill

SQL script for getTop20Bills = select top 20 bill_id, bill_amount from bill

1 Ответ

3 голосов
/ 16 мая 2011

Я полагаю, у вас есть более двух столбцов в вашем billTableAdapter. В getTop20Bills () вы выбираете только два столбца, которые вам нужны. Вы должны добавить недостающие столбцы во второй скрипт. Или вы можете создать новый табличный адаптер, который содержит только эти два столбца и привязать сетку к новому адаптеру

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...