Domanda

Posso specificare un database diverso da ASPNETDB usando SqlMembershipProvider ? Sto sviluppando un sito su un host condiviso e devo limitare il mio schema di dati a un unico database fornito.

L'ultima volta che ho suggerito di rullare il mio codice di autenticazione mi è stato sgridato per intero.

In alternativa, c'è qualche altro sistema di autenticazione in pacchetto che posso inserire e configurare per utilizzare un database e le tabelle arbitrarie da asp.net?

È stato utile?

Soluzione

È possibile installare lo schema di appartenenza ASP.Net su qualsiasi database SQL utilizzando strumento da riga di comando aspnet_regsql.

Puoi anche specificare qualsiasi stringa di connessione che desideri per il tuo provider di appartenenza. Aggiungi semplicemente qualcosa del genere alla tua dichiarazione di appartenenza nel tuo file 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> 

Altri suggerimenti

La risposta precedente è in gran parte corretta, ma ho avuto un problema fino a quando non ho pienamente qualificato il "Tipo" valore da " System.Web.Security.SqlMembershipProvider " ;.

<membership defaultProvider="MyProvider">
  <providers>
    <add connectionStringName="MyProvider"
         applicationName="/Test"
         description="MyProvider"
         name="MyProvider"
         type="System.Web.Security.SqlMembershipProvider" />
  </providers>
</membership>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top