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


Автор: posdnyaa 21.4.2008, 09:22
Здравствуйте.
Работаю с компонентом GridView, связанным с SQLDataSource. В SQLDataSource свойство Select command примерно такое:
Код
SELECT * FROM [myTable] WHERE ([ServerDate] = @myDate), 
т.е. выбираю записи сделанные за сегодня. Для события кнопки Button1 пишу такой код
Код
SqlDataSource1.SelectCommand:='SELECT * FROM [myTable]'; 
т.е. при нажатии на эту кнопку хочу получить все имеющиеся в таблице записи.
Проблема вот в чем. Если записи сегодня уже были сделаны и после загрузки страницы я вижу мою таблицу GridView, то при нажатии на кнопку Button1 ожидаемый результат я получаю (все записи из таблицы, независимо от даты). Однако, если сегодня записей еще нет (таблицу я не вижу, а вижу только например предопределенный для отсутствия записей текст NoData), то при нажатии на кнопку Button1 всех записей из таблицы я НЕ получаю. А продолжаю видеть NoData.
Пробовал сделать для GridView DataBind – не помогло. Подскажите, пожалуйста,  как достичь работоспособности этого примера. Спасибо.

Автор: akizelokro 23.4.2008, 09:30
самый быстрый способ заставить работать твой пример - с самого начала сформировать запрос как 

Код

SELECT * FROM [myTable]


и в самом начале поставтиь фильтр на записи ServerDate = DateTime.Now.Date, а по нажатии кнопки снимать фильтр. Это и более логичный способ построения запроса, так как ты всё равно используешь полную выборку без ограничивающих условий.

По самому GridView не подскажу . Могу предположить, что его надо попробовать отрефрешить.

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