Я работаю над приложением ASP.NET Web Forms с SqlMembershipProvider
. Поскольку он работает и на Azure, я использую KB2006191 Updated ASP.NET scripts for use with SQL Azure для таблиц и SP.SqlMembership как на Azure, так и на автономном SQL Server
Очевидно, что они не работают плавно с автономным SQL Server 2008 R2 SP1. Особенно dbo.aspnet_Users_DeleteUser
срабатывает внутренняя ошибка:
Msg 8624, Level 16, State 1, Procedure aspnet_Users_DeleteUser, Line 111 Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services.
Edit:
я сломалась вопрос к одному SQL заявление, которое на самом деле не удается (даже если я жестко закодировать значение для @UserId
):
DELETE FROM dbo.aspnet_Users WHERE UserId = @UserId
Оригинал:
Я попытался исправить мою установку SQL Server на downloading a Cumulative Update Package and setting trace flag 4199. Однако это не помогло. Честно говоря, я не слишком уверен, правильно ли я применил исправление. Я занимаюсь дальнейшим исследованием этого.
Кроме того, я попытался немного переписать пакет, так как нашел несколько советов в Интернете. Это тоже не помогло, и один и тот же запрос генерируется 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?
Мы используем универсальные провайдеры, и они отлично работают. Обратите внимание, что они работают только для ASP.Net 4.0+. –
+1 (и ответ) для реального улучшения. Теперь я исправил свою фактическую проблему, указав столбец в одной из моих собственных таблиц, у которой была ссылка с внешним ключом на 'aspnet_Users'. Однако это не является обычно адаптивным. –