Я работаю над приложением ASP.NET Web Forms с SqlMembershipProvider
.Поскольку он также работает в Azure, я использую KB2006191 Обновленные сценарии ASP.NET для использования с SQL Azure для таблиц и SP.
Очевидно, что они не работают гладко с автономным SQL Server2008 R2 SP1.Особенно dbo.aspnet_Users_DeleteUser
запускает внутреннюю ошибку:
Сообщение 8624, уровень 16, состояние 1, процедура aspnet_Users_DeleteUser, строка 111 Внутренняя ошибка обработчика запросов: обработчику запросов не удалось создать план запроса.За дополнительной информацией обращайтесь в Службу поддержки клиентов.
Редактировать:
Я разбил проблему на один оператор SQL, который фактически не выполняется (даже если явведите значение для @UserId
):
DELETE FROM dbo.aspnet_Users WHERE UserId = @UserId
Оригинал:
Я попытался исправить установку SQL Server, загрузив накопительный пакет обновления и настройкифлаг трассировки 4199 .Однако это не помогло.Если честно, я не слишком уверен, правильно ли я применил патч.Я продолжаю исследовать это.
Более того, я попытался немного переписать SP, так как нашел несколько советов в Интернете.Это также не помогло, и тот же запрос генерируется aspnet_regsql
для автономного SQL Server в любом случае.На самом деле я попытался избавиться от подзапроса в строке 111, превратив следующее:
IF ((@TablesToDeleteFrom & 1) <> 0 AND
(@TablesToDeleteFrom & 2) <> 0 AND
(@TablesToDeleteFrom & 4) <> 0 AND
(@TablesToDeleteFrom & 8) <> 0 AND
(EXISTS (SELECT UserId FROM dbo.aspnet_Users WHERE @UserId = UserId)))
... в следующее:
IF ((@TablesToDeleteFrom & 15) <> 0)
Кто-нибудь сталкивался с подобными проблемами, связанными с членством?и Azure, и автономный SQL Server?