Лучший способ разрешить пользователю определять порядок таблицы?
Мы используем элементы управления SQL Server 2005 и DevExpress.
У нас есть таблица, содержащая следующее:
- Процесс A
- Процесс B
- Процесс C
- Отчет A
- Отчет B
- Отчет C
Мы хотим, чтобы пользователь мог изменить порядок на что угодно.
Вот один пример:
- Процесс C
- Процесс A
- Процесс B
- Отчет B
- Отчет A
- Отчет C
Для этого мы добавили поле DisplayOrder (INT) в таблицу, которая поддерживается нашим приложением.
Является ли использование поля INT лучшим решением для пользовательского заказа?
Есть ли другие способы сделать это?
Причина, которую я спрашиваю, заключается в том, что в нашем текущем приложении требуется около 1 секунды для перемещения строки вниз (или вверх). Я собираюсь взломать код, чтобы понять, почему он занимает столько времени, и если у вас, гуру Stack Overflow, есть какие-нибудь хорошие идеи, я мог бы реализовать их в то время.
Если вам интересно, вот как я полагаю, наше приложение позволяет редактировать DisplayOrder:
- Загрузить таблицу в GridView
- Выберите строку
- Нажатие кнопки «Вниз» (есть также кнопка «Вверх»)
- Событие Click заменяет DisplayOrder текущей строки на строку под ней.
- Изменения обеих записей записываются обратно в базу данных
- Это занимает около 1 секунды за клик (т. Е. 10 кликов равны 10 секундам)