Autenticazione con .NET 2.0 e profiler

giovedì 05 ottobre 2006 - 18.53

squilibrio Profilo | Expert

Ciao, la mia premessa è che ho seguito un paio di webcast e letto articoli sull'argomento sia in questo sito sia su altri; purtroppo però non ho capito come modificare la pagina di registrazione aggiungendo un campo non presente in quella di default e, soprattutto, come fare in modo che il campo sia di tipo DropDownList (quindi che contenga elementi recuperati da una tabella del DB).

Spero di essermi spiegato.

Ciao

Grazie 1k

squilibrio Profilo | Expert

Si, in effetti ho visto che tramite il wizard è possibile creare un nuovo elemento nell'HTML... ma come salvo il valore dell'elemento? e in quale posizione del codice?

Non riesco a capire come salvarlo e come ricavarne il valore

Grazie 1k

squilibrio Profilo | Expert

Ok, fin qui ci ero arrivato anche io.

Il problema non è creare un controllo server (es: Textbox) ma dove e come salvarlo, dato che la procedura di salvataggio dell'utente è "automatica"... intendo contenuta nel controllo! Immagino di dover derivare qualche istruzione di salvataggio ma non capisco come e non ho trovato nessun esempio a riguardo!

Grazie 1k

squilibrio Profilo | Expert

Io avevo creato le mie tabelle usando regsql, quindi ho riprodotto le tabelle che dovrebbero essere in ASPNETDB.MDF nel mio DB SQL Server che utilizzo anche per contenere i dati... ho notato che, anche se lo cancello, continuo a trovare nella cartella Data il mio ASPNET.MDF ad ogni successiva apertura di Web Dev (perchè??), per scrupolo ho provato a verificare ma, nemmeno in questo DB (.MDF) trovo il mio campo aggiuntivo...

Per quale motivo continua a crearmi il DB nella cartella AppData??

Ho sbagliato qualche cosa nel web config?

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

squilibrio Profilo | Expert

Infatti!! E' quello che voglio, io vorrei dimenticarmi del DB presente in App_data e lavorare su un unico DB SQL Server, quello che contiene i miei dati e le tabelle ASPNET_...
Ma allora perchè:

- il campo definito come profile non mi viene creato in fase di registrazione dell'utente
- continua a crearmi il file mdf nella cartella app_data

squilibrio Profilo | Expert

Ho provato a cancellarla ma non è cambiato nulla... ora cmq non vorrei farti perdere tempo con questo non problema ;-)

Ho fatto parecchie prove, pian piano mi sto chiarendo le idee. Il fatto che non veniva salvato nulla nella tabella ASPNET_Profile era dovuto ad un mio errore nell'evento associato. Ora viene creato il campo.

Il mio dubbio ora è: come dovrei gestire un DropDownList, intendo: dove lo alimento nel codebehind per poter poi visualizzare il DropDownList nella pagina di registrazione?

Come recupero/gestisco il campo associato ad ogni cliente? intendo: come recupero l'informazione relativa all'utente salvata nella tabella ASPNET_Profile??

In questo post allego il mio web.config definitivo al quale ho aggiunto un provider anche per il profile (cosa che non c'era precedentemente...) dovrei associare anche un provider per i Roles???


<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<connectionStrings>
<remove name="APP" />
<add name="APP"
connectionString="Server=SERVER\SQLEXPRESS;Database=APP;Trusted_Connection=true;uid=sa;pwd=psw;"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<pages styleSheetTheme="PROVA"/>
<customErrors mode="RemoteOnly"/>
<compilation debug="true"/>
<authentication mode="Forms">
<forms loginUrl="Default.aspx" protection="Validation" timeout="300" />
</authentication>
<authorization>
<allow users="*"/>
</authorization>
<globalization requestEncoding="utf-8" responseEncoding="utf-8"/>
<profile enabled="true">
<properties>
<add name="DataNascita" type="String"/>
</properties>
</profile>
<membership defaultProvider="SqlProvider">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="APP"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
/>
</providers>
</membership>

<profile defaultProvider="SqlServerProfile" automaticSaveEnabled="true">
<providers>
<add
name="SqlServerProfile"
type="System.Web.Profile.SqlProfileProvider,
System.Web, Version=2.0.3600.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="SNX"
/>
</providers>
<properties>
<add name="DataNascita" type="String"/>
</properties>
</profile>


<roleManager enabled="true"/>
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider"
description="SiteMap provider which reads in .sitemap XML files."
type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
siteMapFile="web.sitemap"
securityTrimmingEnabled="true"/>
</providers>
</siteMap>
</system.web>
<location path="Admin">
<system.web>
<authorization>
<allow roles="Administrators"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
</configuration>

Grazie infinite per l'aiuto!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5