powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Переключение Datasourse(новичку:))
11 сообщений из 11, страница 1 из 1
Переключение Datasourse(новичку:))
    #37559932
karie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет!
На форме в gridview есть linkbutton, по нажатию на который должен меняться sqldatasourseid для изменения стиля сортировки.
Хотелось бы узнать как правильно реализовать такую функцию.

Protected Sub LinkButton2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton2.Click
If Not (ASPxGridView2.DataSource Is Sql_ReportsSortFIO) Then

ASPxGridView2.DataSourceID = String.Empty
ASPxGridView2.DataSource = Sql_ReportsSortFIO
ASPxGridView2.DataBind()

Else
ASPxGridView2.DataSourceID = String.Empty
ASPxGridView2.DataSource = sql_Reports
ASPxGridView2.DataBind()

End If
End Sub

Спасибо)
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37559944
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А не проще воспользоватся стандартными средствами сортировки самого грида ?
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37559947
karie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проще, но почему то ФИО в таблице стандартными средствами не сортирует
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37559950
karie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
причем сортировка должна быть необычная, а именно эти условия и описаны в 2-х sql запросах.
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37559960
Фотография AHTOH_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
karie, так меняйте просто сам запрос у SqlDataSource. Зачем вам их 2.
Запрос поменяли потом у GridView.DataBind() и всё.
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37559979
karie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как же мне тогда реализовать разную сортировку?....
Вот запросы

select t.id, t.Instid, p.Position, t.SR, w.FIO, t.Report, t.Solution, c.Category, t.Category, ReportDate, t.CloseDate, t.ReporterName, a.UserNickName, CASE
when t.CloseDate is null then 1
else 0 end as 'ts',
CASE
when t.CloseDate is null then 0
else 1 end as 'tts'
from dbo.tbl_InstTickets t left join dbo.tbl_InstWorkers w on t.SR = w.id left join dbo.tbl_Position p on p.id = w.PositionID left join dbo.tbl_Category c on t.Category=c.id
left join dbo.tbl_auth a on t.ReporterName=a.id
where t.Instid = @Instid order by t.CloseDate



select t.id, t.Instid, p.Position, t.SR, w.FIO, t.Report, t.Solution, c.Category, t.Category, ReportDate, t.CloseDate, t.ReporterName, a.UserNickName, CASE
when t.CloseDate is null then 1
else 0 end as 'ts',
CASE
when t.CloseDate is null then 0
else 1 end as 'tts'
from dbo.tbl_InstTickets t left join dbo.tbl_InstWorkers w on t.SR = w.id left join dbo.tbl_Position p on p.id = w.PositionID left join dbo.tbl_Category c on t.Category=c.id
left join dbo.tbl_auth a on t.ReporterName=a.id
where t.Instid = @Instid order by w.FIO


в первом случае- это просто сортировка имен в алфавитном порядке...а во втором это сортировка по статусу выполнения задачи

мне нужно чтобы по нажатию на кнопочку юзер мог увидеть упорядоченность по закрытым-незакрытым задачам, а при следующем нажатии ФИО. соответсвеннно эти режимы должны переключаться..


Второй вопрос...может еще кто подскажет можно ли это сделать без перезагрузки страницы..
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37560061
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по моему мнению Вам бы вот это прочитать , запросы одинаковы, отличие только Orderby/

И без перезагрузки вроде бы обойдетесь
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37560065
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а может все таки так сделать , а не писать запросы в коде (может я конечно ошибаюсь)?
Create View ListЧетотам AS
select t.id, t.Instid, p.Position, t.SR, w.FIO, t.Report, t.Solution, c.Category, t.Category, ReportDate, t.CloseDate, t.ReporterName, a.UserNickName, CASE
when t.CloseDate is null then 1
else 0 end as 'ts',
CASE
when t.CloseDate is null then 0
else 1 end as 'tts'
from dbo.tbl_InstTickets t left join dbo.tbl_InstWorkers w on t.SR = w.id left join dbo.tbl_Position p on p.id = w.PositionID left join dbo.tbl_Category c on t.Category=c.id
left join dbo.tbl_auth a on t.ReporterName=a.id
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37560258
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306по моему мнению Вам бы вот это прочитать , запросы одинаковы, отличие только Orderby/

И без перезагрузки вроде бы обойдетесь

Не самая лучшая реализация - клеить order by прямо в коде. Постраничная выборка вообще вне всякой критики :)
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37560261
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
karie
в первом случае- это просто сортировка имен в алфавитном порядке...а во втором это сортировка по статусу выполнения задачи


Здесь хорошо подойдут case в order by

Код: plaintext
1.
2.
3.
4.
5.
SELECT BusinessEntityID, SalariedFlag
FROM HumanResources.Employee
ORDER BY CASE SalariedFlag WHEN 1 THEN BusinessEntityID END DESC
        ,CASE WHEN SalariedFlag = 0 THEN BusinessEntityID END;
GO



В параметризованных запросах в кейсах можно использовать параметры.
...
Рейтинг: 0 / 0
Переключение Datasourse(новичку:))
    #37563695
karie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Переключение Datasourse(новичку:))
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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