LINQ контекст SubmitChanges - PullRequest
       10

LINQ контекст SubmitChanges

1 голос
/ 06 февраля 2010

Что касается порядка SubmitChanges (Вставить, Обновить, Удалить), есть ли способ изменить этот порядок? Мне нужно сначала выполнить удаление, любые обновления, затем любые новые вставки. У меня есть сетка данных, где пользователь может делать все добавления, изменения и обновления и отправить. Поскольку в каждой строке сетки должен быть выбран уникальный элемент (посредством раскрывающегося списка), пользователь может удалить строку, затем попытаться использовать удаленный раскрывающийся элемент в новой строке, затем попытаться обновить все изменения сбой обновления (поскольку элемент, который пользователь хочет удалить, фактически существует в базе данных, потому что отправитель сначала выполняет вставки). Есть ли настройка, в которой я могу управлять автоматическим порядком обновлений, или я должен сам обновлять вручную?

Ответы [ 2 ]

1 голос
/ 06 февраля 2010

Я не пробовал это, но вы могли бы рассмотреть следующее. Сначала получите ChangeSet, используя DataContext.ChangeSet. Затем выполните ChangeSet.Deletes вызов Table<T>.DeleteOnSubmit на новом экземпляре вашего DataContext. Повторите полоскание для ChangeSet.Updates и ChangeSet.Inserts.

Удачи.

0 голосов
/ 06 февраля 2010

Я не верю, что это возможно. Вам нужно будет обработать изменения в нужном вам порядке и вызывать SubmitChanges () после каждой вставки, обновления или удаления. Если вы хотите, чтобы все это было в рамках транзакции, используйте объект TransactionScope.

...