2009-04-24 14 views
20

Ho creato un sito Web di piccole dimensioni e ci sarà un solo amministratore, quindi nel pannello di amministrazione sto richiedendo una password con un valore che non recupero da un database, ho solo difficoltà lo ho codificato nella funzione in codice, so che questo è sbagliato anche se non so perché.Memorizza e recupera valori da web.config

Quindi è difficile codificarlo in web.config la cosa giusta da fare? e come?

risposta

49

Per quanto errato ... il problema è che se è necessario cambiarlo ed è codificato nel codice, è necessario ricompilare, ripubblicare, ridistribuire il sito Web, mentre una modifica al web.config può essere fatto senza farlo.

Si può inserire in un AppSetting nel web.config in questo modo.

<appSettings> 
    <add key="AdminPassword" value="ASDF1234" /> 
</appSettings> 

e utilizzando questo codice per recuperarla

System.Configuration.ConfigurationManager.AppSettings["AdminPassword"].ToString() 

Anche se mi piacerebbe avere uno sguardo a questo.

http://aspnet.4guysfromrolla.com/articles/021506-1.aspx

Copre la crittografia sezioni del web.config

+0

È necessario riavviare il server Web (IIS) affinché il ** web.config ** abbia l'effetto? C'è un modo migliore? –

+0

sembra la soluzione, ma perché dovrei ottenere il vecchio "Impossibile risolvere il simbolo ToString?" – whyoz

+3

So che è molto vecchio ma ... ma la sintassi dovrebbe essere: 'System.Configuration.ConfigurationManager.AppSettings (" AdminPassword "). ToString()' – Jeroen

3

Niente di sbagliato con il suggerimento di Eoin per i progetti di piccole, ma se il vostro progetto potrebbe un giorno essere necessario più di 1 admin e diversi tipi di ruoli degli utenti. Vorrei prendere il colpo e impostare l'appartenenza ASP.

http://msdn.microsoft.com/en-us/library/ms998347.aspx

È possibile utilizzare l'integrazione in Windows o utilizzare un database e non è troppo difficile da configurare. Soprattutto se si utilizza lo strumento di configurazione integrato in IIS.

+0

sì. assolutamente d'accordo. vale invariabilmente la pena di prendere anche il colpo, perché sai solo che prima o poi dovrai farlo. –

Problemi correlati