powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновления DataSet, DataGridView
9 сообщений из 9, страница 1 из 1
Обновления DataSet, DataGridView
    #33921363
strizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На .NET пишу первую программу, так что хочу немного уточнить правильность своих действий:

при добавлени новой строки в таблицу БД, я просто добавляю еще одну строку в DataTable и соответсвенно добавляется строка в DataGridView, а не обновляю всю таблицу из БД целеком, правильно ли я делаю?

Насколько часто обычно обновляют весь Grid целиком, ведь другие пользователи могут сделать обнавления в БД и данные в необнавленном Гриде не будут соответсвовать.

В общем посоветуйте, пожалуйста, как лучще поступать.

Заранее спасибо.
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33922222
strizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
public void MainCardUpdate()
{
SqlConnection Connection = new SqlConnection("server=STRIZZZ;" +
"Trusted_Connection=yes;" +
"database=Cont; " +
"connection timeout=30");

string commandStringContainers = "select * from vContainers";

SqlCommand Command = Connection.CreateCommand();
Command.CommandText = commandStringContainers;

SqlDataAdapter dataAdapterContainers = new SqlDataAdapter();
dataAdapterContainers.SelectCommand = Command;

DataSet dataSet = new DataSet();

Connection.Open();

dataAdapterContainers.Fill(dataSet, "vContainers");

dataSet.AcceptChanges();

DataTable dataTableCont = dataSet.Tables["vContainers"];

Connection.Close();

GridCont.DataSource = dataTableCont;

GridCont.Refresh();
}
вызов этой процедуры при запуски программы получает данные с БД на ура, а потом никакие изменения при вызове этой процедуры не поступают, хотя они есть. подскажите решение пробелмы, плз.
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33923684
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я думаю, что ошибка в том что Вы сразу и выбираете и обновляете ДатаСет
а их надо разделять
к примеру на ФормЛоад вешает заполнение ДатаСета
а в MainCardUpdate() вызываешь метод Update у ДатаАдаптера
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33924205
strizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKot

дело в том, что формлоад происходит при загрузки программы, да и обновления, как я уже говорил при загрузки нормально происходят, а нужно обновления в ходе выполнения программы.
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33924654
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
либо я чего-то не догоняю, либо..

вот твой код
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
DataSet dataSet = new DataSet();

Connection.Open();

dataAdapterContainers.Fill(dataSet, "vContainers");

dataSet.AcceptChanges();

Если Вы только что заполнили ДатаСет, то какие там могут быть изменения?

пойдем другим путем

strizzz при добавлени новой строки в таблицу БД, я просто добавляю еще одну строку в DataTable и соответсвенно добавляется строка в DataGridView, а не обновляю всю таблицу из БД целеком, правильно ли я делаю?
в полне

strizzz Насколько часто обычно обновляют весь Grid целиком, ведь другие пользователи могут сделать обнавления в БД и данные в необнавленном Гриде не будут соответсвовать.
у меня для энтих случаев есть кнопка Apply
по нажатию этой кнопки вызывается метов Update у ДатаАдаптера
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33925543
strizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKot

HandKotЕсли Вы только что заполнили ДатаСет, то какие там могут быть изменения?

я уже решил, что буду делать тоже с кнопкой "Apply" как и у вас, так что пока добавляю только в БД , а не в датасет, а потом пытаюсь по нажаите кнопки обновить Грид, но как я уже говорил, что обновляется только после перезапуска.

HandKotу меня для энтих случаев есть кнопка Apply
по нажатию этой кнопки вызывается метов Update у ДатаАдаптера

Изобразил нечто такое:

SqlDataAdapter dataAdapterContainers = new SqlDataAdapter();
SqlConnection Connection = new SqlConnection("server=STRIZZZ;" +
"Trusted_Connection=yes;" +
"database=Cont; " +
"connection timeout=30");
DataSet dataSet = new DataSet();
DataTable dataTableCont = new DataTable();

public MainCard()
{
InitializeComponent();

string commandStringContainers = "select * from vContainers";

SqlCommand Command = Connection.CreateCommand();
Command.CommandText = commandStringContainers;

dataAdapterContainers.SelectCommand = Command;

Connection.Open();

dataAdapterContainers.Fill(dataSet, "vContainers");

dataTableCont = dataSet.Tables["vContainers"];

Connection.Close();

GridCont.DataSource = dataTableCont;

//GridCont.Refresh();
}

public void MainCardUpdate()
{
Connection.Open();
dataAdapterContainers.Update(dataSet, "vContainers");
Connection.Close();
}

опять та же история
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33925780
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если данные в базе появляются, значит надо обновить грид

чот-то типа Bind или Refresh
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33927086
не понял
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
public void MainCardUpdate()
{
Connection.Open();
dataAdapterContainers.Update(dataSet, "vContainers");
Connection.Close();
}

опять та же история

Может не совсем в тему но...
1. Зачем открывать - закрывать соединение... Адаптер и так это делает...
2. Датасет что локальный? Данные только для отображения???
...
Рейтинг: 0 / 0
Обновления DataSet, DataGridView
    #33928666
strizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял

в гриде данные только для отображения, редактируются и добавляются по средствам другой формы.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Обновления DataSet, DataGridView
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]