Как связать данные SQL с .NET DataGridView? - PullRequest
0 голосов
/ 09 апреля 2010

Я пытаюсь привязать таблицу в базе данных SQL к элементу управления DataGridView. Я хотел бы сделать так, чтобы, когда пользователь вводит новую строку данных в DataGridView, эта запись автоматически добавляется в базу данных. Вот моя текущая попытка ...

    BOMClassesDataContext DB = new BOMClassesDataContext();

    Form_Load()
    {
        var mfrs = from m in DB.Manufacturers
                   select m;

        BindingSource bs = new BindingSource();
        bs.DataSource = mfrs;

        dataGridView1.DataSource = bs;
    }

    dataGridView_CellValueChanged()
    {
        try
        {
            DB.SubmitChanges()
        }
        catch(Exception Ex)
        {
            MessageBox.Show(Ex.Message);
        }
    }

Если щелкнуть нижнюю пустую строку, она автоматически заполняет столбец идентификатора (идентификатора) таблицы "0" вместо следующего неиспользованного значения. Если я вручную изменяю это значение на следующее доступное, то добавляется новая запись, но если я оставляю это в 0, это ничего не делает. Как я могу это исправить? В моих классах LINQ to SQL для столбца ID таблицы свойство AutoGenerate имеет значение true.

1 Ответ

1 голос
/ 09 апреля 2010

Вам нужно выполнить DB.SubmitChanges(), когда пользователь закончил.

При использовании Linq To SQL никакие изменения не вносятся в базовую базу данных, пока вы не сделаете это.

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