2009-09-15 2 views
1

Можно ли указать другую базу данных, чем ASPNETDB, используя SqlMembershipProvider? Я разрабатываю сайт на общем хосте и должен ограничивать мою схему данных одной доступной базой данных.Возможно ли использовать другое имя базы данных с SqlMembershipProvider

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

В качестве альтернативы, есть ли какая-либо другая упакованная система аутентификации, в которую я могу зайти и настроить использование произвольной базы данных и таблиц из asp.net?

ответ

4

Вы можете установить ASP.Net членство схемы в любой базе данных SQL с помощью aspnet_regsql command line tool.

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

<connectionStrings> 
    <add name="MyConnectionString" connectionString="Database=MyDatabase;Server=xxx;User=xxx;Pwd=xxx;" providerName="System.Data.SqlClient"/> 

</connectionStrings> 

<membership defaultProvider="MyProvider"> 
     <providers> 
     <add connectionStringName="MyConnectionString" applicationName="/Test" 
    description="MyProvider" name="MyProvider" type="SqlMembershipProvider" /> 
     </providers> 
</membership> 
1

Предыдущий ответ в основном правильно, но у меня была проблема, пока я полностью не квалифицирован «Тип» значение, чтобы быть «System.Web .Security.SqlMembershipProvider».

<membership defaultProvider="MyProvider"> 
    <providers> 
    <add connectionStringName="MyProvider" 
     applicationName="/Test" 
     description="MyProvider" 
     name="MyProvider" 
     type="System.Web.Security.SqlMembershipProvider" /> 
    </providers> 
</membership>