Не странная просьба, насколько я понимаю необходимость. Решение, которое мы использовали, заключается в том, что действительная учетная запись администратора по умолчанию не отображалась в списке удаления, поскольку она была «сгенерирована системой». Это может быть не переоснащение.
Чего вы не можете сделать, так это использовать автоматическое перетаскивание мусора и установить этот тип функциональности. Вам нужно будет либо выполнить пару запросов, чтобы удалить последний запрошенный элемент, либо записать триггер в базу данных, либо написать собственный код, чтобы не удалять последний элемент.
В качестве примера сопряжения: с наборами данных, поскольку они отключены, вы можете удалить последнюю строку перед отправкой запроса на удаление. С LINQ и EF у вас есть аналогичные опции для формирования возвращаемых данных.
Затем, если вы хотите явно контролировать свой код (хорошо), вы можете пролистать элементы и убедиться, что последний не удаляется.
Если вы хотите сделать это как можно более "безопасным", вы можете рассмотреть триггер в таблице, который проверяет, является ли удаление последним пользователем-администратором для конкретной организации, и прерывает работу, если это так. Тогда пользователь может сказать «удалить все» в Интернете, но база данных защищает их.