Полагаю, что атрибут попросту не допустит выполнение кода, если переданная строка будет null. Т.е этот if попросту игнорируется и выкинется NullReferenceException.
Мб сделано так для совместимости?
Более того. Почти запрещается использовать порядок строк в бд. Т.е по нумерации. Доступ производится по ключу или предикату. Если нужно хранить именно отсортированный список - в кеш.
Конечно, вопрос какую. БД это область, где хранятся различные виды информации. А вот СУБД - другое дело. Субд реляционки или nosql - разные вещи, и данные оперируются по-разному
Для этого создается событие: оно вызывается тем методом, где используется переменная. Подписчики события получают информацию о текущем значении переменной и выполняют свой код.