16 messaggi dal 05 aprile 2007
Salve a tutti,

Sto creando un sito che utilizza le membership api e mysql, di conseguenza ho scaricato i provider adatti da http://www.codeproject.com/aspnet/MySQLMembershipProvider.asp e il profile provider da http://www.codeproject.com/cs/database/ASPNet_20.asp.

Ora però mi sorge un problema: devo fare in modo che il profilo venga salvato anche quando l'utente non è loggato (cambio skin e altre cosucce). Tutto funziona finché l'utente è loggato, ma sugli utenti anonimi si verifica un'eccezione poiché l'UserID nel Profile Provider non viene trovata.
Ora, non è un problema modificare il profile provider scaricato, ma devo sapere come fa ASP.NET a identificare in maniera univoca un utente anonimo da un altro (se è questo il problema...).

Qualcuno ha avuto un problema simile?

Per completezza posto il web.config
<configuration>
  <appSettings/>
  <connectionStrings>
    <add name="ConnString" connectionString="Database=prova_com;Data Source=localhost; User Id=root; Password=null"/>
  </connectionStrings>
  <system.web>
    <roleManager defaultProvider="MySqlRoleProvider" enabled="true" cacheRolesInCookie="true" cookieName=".ASPROLES" cookieTimeout="30" cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration="true" cookieProtection="All">
      <providers>
        <clear/>
        <add name="MySqlRoleProvider" type="Andri.Web.MySqlRoleProvider" connectionStringName="ConnString" applicationName="app" writeExceptionsToEventLog="true"/>
      </providers>
    </roleManager>
    <membership defaultProvider="MySqlMembershipProvider" userIsOnlineTimeWindow="15">
      <providers>
        <clear/>
        <add name="MySqlMembershipProvider" type="Andri.Web.MySqlMembershipProvider" connectionStringName="ConnString" applicationName="app" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" passwordFormat="Hashed" writeExceptionsToEventLog="true"/>
      </providers>
    </membership>
    <profile defaultProvider="MySqlProfileProvider" automaticSaveEnabled="true">
      <providers>
        <clear/>
        <add name="MySqlProfileProvider" type="Malachi.MySqlProviders.MySqlProfileProvider" connectionStringName="ConnString" applicationName="app"/>
      </providers>
      <properties>
        <add name="FirstName" allowAnonymous="true"/>
        <add name="LastName"/>
      </properties>
    </profile>
    <anonymousIdentification enabled="true" cookieSlidingExpiration="true" cookieProtection="All" />
    <compilation debug="true">
      <assemblies>
        <add assembly="MySql.Data, Version=5.1.2.2, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/></assemblies></compilation>
    <authentication mode="Forms" />

...e altra roba che non c'entra...


Grazie

Modificato da ceglia82 il 15 novembre 2007 09.57 -
Modificato da ceglia82 il 15 novembre 2007 09.58 -
se non erro viene usato un cookie, però non ho mai implementato un Profile Provider quindo non so darti informazioni dettagliate in merito

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
16 messaggi dal 05 aprile 2007
Grazie marco per la risposta

Comunque se a qualcuno può servire in futuro, ho provato con i Provider di SQLite e tutto funziona anche con gli utenti anonimi.
Ergo: c'è qualcosa che non va con i provider che avevo indicato sopra.

Per quanto mi riguarda, partendo dai provider di Access me li convertirò per MySql così son sicuro che funzionino a dovere

Ciao
di nulla, probabilmente i provider che hai scaricato non sono implementati a dovere, per la cronaca, il cookie del profiel se non ricordo male dovrebbe esserci sempre, comunque è facile controllare

viao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.