Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Обновление данных в DataSet


Автор: Fomaa 2.9.2008, 10:05
Добрый день,
вот я загружаю данные в таблицу
Код

                SqlConnection connection = new SqlConnection("Data Source=host;Initial Catalog=dbbb;Integrated Security=True;");
                connection.Open();
                DataSet dataSet = new System.Data.DataSet();
                SqlDataAdapter adapter = new SqlDataAdapter();

                adapter.SelectCommand = new SqlCommand(" select * from dbo.events", connection);
                adapter.TableMappings.Add("Table", "events");
                adapter.Fill(dataSet);

                connection.Close();

                dataGridView.DataSource = dataSet.DefaultViewManager;
                dataGridView.DataMember = "events";


а что делать если пока заупущена у меня программа кто-то на другом компьютере добавил еще запись? как ее мне получить? Если все заново выполнить - долго будет выполняться

Автор: Idsa 2.9.2008, 10:08
Fomaa, вопрос непростой, но тривиальный. Воспользуйтесь поиском по форуму и гуглу (что-нибудь вроде pessimistic and optimistic concurrency).

Автор: Fomaa 3.9.2008, 16:44
И все же, у кого есть решение это проблемы - поделитесь

Автор: Ruslan_ 5.9.2008, 13:34
Как мне известно - это двузвенная архитектура (клиент-сервер). Поэтому единственный вариант - по определенному событию сохранить в БД сделанные изменения и загрузить данные из БД заново. "Определенным событием" может быть как пользователь (его щелчек по кнопке сохр.-обновить), либо время. А Сохранять в БД можно либо все изменения, либо только те, что были сделаны до последней прогрузки в интерфейс пользователя.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)