Невозможно вставить в базу данных, используя LINQ to SQL - PullRequest
0 голосов
/ 18 мая 2018

В моем приложении есть кнопка и сетка, и всякий раз, когда я нажимаю эту кнопку, я хочу добавить новую запись в базу данных и отобразить обновленную таблицу в виде сетки.Но по какой-то причине я не могу добавить, но когда я нажимаю эту кнопку снова, она говорит 'System.Data.Linq.DuplicateKeyException'.Таким образом, кажется, что он добавлен для моего вида сетки все тот же и нет ошибок в базе данных.

Это мой метод onclick:

private void button2_Click(object sender, EventArgs e)
        {
            database = new DataClasses1DataContext();
            dataGridView1.DataSource = database.Orders;
            Order order = new Order();
            order.Id = 32;
            order.units = 555;
            database.Orders.InsertOnSubmit(order);
            database.SubmitChanges();

            dataGridView1.DataSource = database.Orders;
        }

1 Ответ

0 голосов
/ 18 мая 2018

Если ваша таблица Order в базе данных получила первичный ключ по идентификатору, вы не можете добавить другой Order с тем же идентификатором.Затем измените ваш order.ID!

EDIT: разрешите order.id до null и добавьте автоинкремент к вашему первичному ключу. Возможно, DB не позволит вам добавить Order, потому что он получил значение наИдентификатор

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