2012-06-08 2 views
0

Перед выполнением копирования таблиц членства ASP.Net сталкивается с проблемой. Поскольку я просто хочу схему, поэтому я сгенерировал скрипт без копирования данных.Миграция членства ASP.Net

Когда я получить доступ к новому сайту, это показано

«System.Web.Security.SqlMembershipProvider» требует базы данных схемы, совместимые с версией схемы «1». Однако текущая схема базы данных несовместима с этой версией. Возможно, вам понадобится либо установить совместимую схему с aspnet_regsql.exe (доступно в каталоге установки фреймворка), либо обновить провайдера до более новой версии.

Вот шаг за шагом, который я сделал, и я не могу заставить его работать.

  1. С SSMS исходного сервера щелкните правой кнопкой мыши по базе данных.
  2. Задача -> Generate Scripts
  3. В Выберите вариант сценария, я нажал Далее.
  4. В разделе «Выбрать тип объекта» я выбрал все и нажмите «Далее».
  5. В разделе «Выбрать роль базы данных» я выбрал все.
  6. В разделе «Выбор схемы» я выбрал все.
  7. В Выберите Сохраненные процедуры, выберите Название, все выбранные.
  8. Выберите All View.
  9. Скрипт в новое окно запроса.
  10. В SSMS сервера назначения я запускаю скрипты.
  11. Созданные таблицы, которые пусты.
  12. Я запустил aspnet_regsql.exe и занесены aspnet_SchemaVersions.

Однако ошибка все еще возникает ... У меня кончились идеи.

ответ

2

Вам нужны данные в таблице aspnet_SchemaVersion. Просмотрите информацию в таблице используемой базы данных и добавьте в конец вставки в конец вашего скрипта, чтобы добавить эти данные в таблицу aspnet_SchemaVersion. Я не могу вспомнить, что у меня на голове, но в нем довольно простые вещи.

Здесь вы, вероятно, должны это сделать, я не думаю, что номера версий изменились, но вы должны проверить свой существующий db.

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘common’, 1, 1) 

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘health monitoring’, 1, 1) 

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘membership’, 1, 1) 

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘personalization’, 1, 1) 

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘profile’, 1, 1) 

INSERT INTO aspnet_SchemaVersions (Feature, CompatibleSchemaVersion, IsCurrentVersion) 
VALUES(‘role manager’, 1, 1) 
+0

Я считаю, что в этой таблице есть только одна строка. – Stilgar

+0

Работает для меня. В моем случае я импортирую пустую базу данных в SQL Azure. – RWendi