Следуя статье shanselman Я пытаюсь использовать «System.Web.Providers», чтобы вы могли использовать членство, правила и профили с Sql Server Compact.
Я установил через Nuget, создал базу данных Users.sdf и скопировал в папку App_Data.
Мой Web.config был следующим:
<profile defaultProvider="DefaultProfileProvider">
<providers>
<clear />
<add
name="DefaultProfileProvider"
type="System.Web.Providers.DefaultProfileProvider"
connectionStringName="DefaultConnection"
applicationName="/" />
</providers>
</profile>
<membership defaultProvider="DefaultMembershipProvider">
<providers>
<clear />
<add connectionStringName="DefaultConnection" enablePasswordRetrieval="false"
enablePasswordReset="true" requiresQuestionAndAnswer="false"
requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider" />
</providers>
</membership>
<roleManager defaultProvider="DefaultRoleProvider">
<providers>
<clear />
<add connectionStringName="DefaultConnection" applicationName="/"
name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider" />
</providers>
</roleManager>
<sessionState mode="Custom" customProvider="DefaultSessionProvider">
<providers>
<add
name="DefaultSessionProvider"
type="System.Web.Providers.DefaultSessionStateProvider"
connectionStringName="DefaultConnection"
applicationName="/" />
</providers>
</sessionState>
<connectionStrings>
<add name="Sql_CE" connectionString="Data Source=|DataDirectory|\Users.sdf;"
providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>
Я не могу использовать aspnet_regsql, потому что он генерирует таблицы на основе SQL Server
Следующая ошибка возникает при попытке доступа к «средству администрирования веб-сайта» на странице безопасности
Проблема с выбранным вами
хранилище данных. Это может быть вызвано
неверное имя или учетные данные сервера, или
по недостаточному разрешению. Оно может
также быть вызвано роль менеджера
функция не включена. Нажмите на
кнопка ниже, чтобы быть перенаправлена на
страница, где вы можете выбрать новые данные
хранить.
Следующее сообщение может помочь в
диагностирование проблемы:
предварительная инициализация запуска приложения
метод Старт по типу
WebMatrix.WebData.PreApplicationStartCode
бросил исключение со следующим
сообщение об ошибке: этот метод не может быть
вызывается во время приложения
этап предварительной инициализации.