У меня есть System.Data.DataTable, который я привязываю к GridView. Если у пользователя нет определенной роли безопасности, я хочу заменить данные в определенных столбцах на «X». Могу ли я сделать это, не перебирая все строки?Измените значение каждой ячейки в столбце DataTable
ответ
Вы также можете сделать это на заднем конце. Передайте идентификатор пользователя или роль в sp, который возвращает только видимые столбцы и значения «X» для столбцов, которые они не могут видеть, и привязать к нему интерфейс.
Внесите событие RowDataBound в GridView и внесите изменения там, если роль безопасности пользователя неадекватна.
void CusomGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(User.Role != "Admin")
{
e.Row.Cells[1].Text = "X";
}
}
Строго говоря, нет. Вы можете использовать методы расширения стиля Linq, чтобы скрыть реализацию, но любой код на процедурном языке будет включать итеративный цикл через строки. Даже событие RowDataBound запускается итеративно каждой строкой; тем не менее, он все равно выполняет итерацию по строкам, так что, по крайней мере, вы не дублируете поведение цикла.
Вы можете просто иметь второй доступный и готовый к использованию столбец имя «ваш столбец2» , заполненный данными x, тогда вы определяете, какой столбец виден на уровне доступа администратора.
В VB.NET вы не можете изменять значения каждой строки без рекурсии.
- 1. SQL, DataTable. Почему значение меняется в каждой строке в столбце?
- 2. Устанавливает значение каждой строки DataTable в определенном столбце
- 3. Код для сравнения каждой ячейки в столбце каждой ячейки в другом столбце
- 4. Ищите значение в столбце DataTable
- 5. найти значение отдельной ячейки в datatable
- 6. Измените все ячейки с пометкой X на значение ячейки, указанную в столбце P
- 7. Групповые ячейки в DataTable
- 8. Измените значение в столбце файла CSV
- 9. Формула для подсчета каждой ячейки в одном столбце, если ее значение не находится в другом столбце
- 10. jQuery datatable - изменить значение ячейки
- 11. Поиск каждой ячейки в столбце, чтобы найти определенное значение и скопировать значение из другой ячейки в строке, значение найдено в
- 12. проверить значение ячейки из поиска datatable
- 13. Измените значения в столбце
- 14. Измените все ячейки в столбце, если найдено слово
- 15. Вычислить значение в столбце для каждой строки
- 16. Двойное значение в столбце на каждой строке
- 17. Измените значение ячейки на основе введенного значения
- 18. значение уникальной ячейки Соединить в каждой строке
- 19. как установить значение центра в каждой экспортной колонке DataTable pdfhtml
- 20. Измените значение отображения в GridColumn
- 21. Excel: Шаблон для каждой ячейки в одном столбце
- 22. Выделите текстовые ячейки в одном столбце, если значение ячейки находится в списке в другом столбце
- 23. Измените значение ячейки, если оно содержит часть строки
- 24. нужна помощь обновить значение ячейки datatable
- 25. Как получить значение ячейки из dataTable Asp.Net
- 26. EXCEL VBA - Пронумеруйте ячейки в столбце, если не пусто, напечатайте значение ячейки в другом столбце
- 27. добавить ячейку в Excel для каждой ячейки в другом столбце, который содержит значение
- 28. Как повторить значение для каждой ячейки x?
- 29. Измените формат ячейки на жирный шрифт, если значение больше 500
- 30. Получить значение каждой ячейки из таблицы динамической
Пошел с этим решением, так как он не требует дополнительного цикла через строки или проверки нескольких ролей. Процесс проверки роли немного связан. – RememberME