Это может быть сделано, просто потребуется некоторая работа.
Вам нужно будет создать класс, который наследуется от ActiveDirectoryMemberhsipProvider, и использовать его вместо вашего провайдера. Таким образом, вы можете поддерживать большую часть функциональности. Затем настройте способ указать два свойства connectionStringName, одно для основного и одно для дополнительного. Вам также нужно будет создать код для чтения информации из конфигурации, так как вы ее изменяете. Затем просто переопределите методы, которые вам нужно перехватить, когда основной не работает, и переключитесь на дополнительный. Это будет самый повторный способ сделать это.
Возможно, есть другие способы сделать это, но это, вероятно, будет хакерским и не очень многоразовым. Как тестирование соединения перед каждым запросом, а затем установка строки соединения таким образом.
Исходя из документации MSDN для класса, это, вероятно, будет единственный способ сделать это. Они не обеспечивают внутреннюю функциональность.