Linq to Sql: может ли экземпляр DataContext возвращать коллекции, содержащие ожидающие изменения? - PullRequest
6 голосов
/ 11 августа 2009

Рассмотрим следующий кодовый блок:

using (PlayersDataContext context = new PlayersDataContext())
{
    Console.WriteLine(context.Players.Count()); // will output 'x'
    context.Players.InsertOnSubmit(new Player {FirstName = "Vince", LastName = "Young"});
    Console.WriteLine(context.Players.Count()); // will also output 'x'; but I'd like to output 'x' + 1
}

Учитывая, что я не звонил

context.SubmitChanges();

приложение будет выводить одинаковое количество игроков до и после оператора InsertOnSubmit.

Мои два вопроса:

Может ли экземпляр DataContext возвращать коллекции, содержащие ожидающие изменения?

Или я должен согласовать экземпляр DataContext с context.GetChangeSet ()?

1 Ответ

4 голосов
/ 11 августа 2009

Конечно, используйте:

context.GetChangeSet()

и для большей детализации есть элементы для вставок, обновлений и удалений.

РЕДАКТИРОВАТЬ : Теперь я понимаю ваш новый вопрос. Да, если вы хотите включить изменения в коллекцию, вам нужно как-то объединить коллекции, возвращаемые GetChangeSet (), и ваши существующие коллекции.

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