Errore Configurazione Strumento di Configurazione ASP.NET

lunedì 17 maggio 2010 - 11.26

sanfra Profilo | Junior Member

Salve, sto creando un sito web con asp.net 3.5, ADO.NET Entity Framework 1.0 e database MYSQL.

Ho installato il Conncetor di Mysql per .net, ho importato le tabelle nel tools di ado.net, e tutto funziona, ho fatto delle prove con delle semplici query Linq To Entities e anche quelle mi restituiscono il risultato dovuto

Ho anche configurato Memebership Provider e Roles Provider, creando all'interno del mio db due tabelle(Users, Roles) e una terza come relazione tra le due(UserInRoles):

<roleManager defaultProvider="MySqlRoleProvider" enabled="true" cacheRolesInCookie="true" cookieName=".ASPROLES" cookieTimeout="30" cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration="true" cookieProtection="All" > <providers> <clear /> <add name="MySqlRoleProvider" type="Credenziali.Web.MySqlRoleProvider" connectionStringName="marebluEntities1" applicationName="/" writeExceptionsToEventLog="true" /> </providers> </roleManager> <membership defaultProvider="MySqlMembershipProvider" userIsOnlineTimeWindow="15"> <providers> <clear /> <add name="MySqlMembershipProvider" type="Credenziali.Web.MySqlMembershipProvider" connectionStringName="marebluEntities1" applicationName="/" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="true" passwordFormat="Hashed" writeExceptionsToEventLog="true" /> </providers> </membership>
e fin qui tutto bene, poi io quando vado ad prire lo strumento di Configurazione di asp.net,e più precisamente sul tab sicurezza
mi dà il seguente errore:
Si è verificato un problema con l'archivio dati selezionato. È possibile che il nome o le credenziali del server non siano valide o che le autorizzazioni non siano sufficienti. È inoltre possibile che la funzione di gestione dei ruoli non sia attivata. Fare clic sul pulsante sotto per accedere a una pagina in cui scegliere un nuovo archivio dati.

Il seguente messaggio può essere utile per la diagnosi del problema: Keyword not supported. Nome parametro: metadata
che a me non è mai apparso.
se vado a cliccare sul pulsante "Scegli Archivio Dati" che si trova nella stessa schermata, mi porta su Provider a scegfliere tra due voci:
Selezionare un unico provider per tutti i dati di gestione del sito
Selezionare un provider diverso per ciascuna tipologia (opzione avanzata)
se seleziono il primo mi dice che non esiste nessun provider
nella seconda ipotesi mi dà solo i riferimenti a MySqlMembershipProvider e MySqlRoleProvider con i radiobutton selezionati, se poi clicco su prova di uno dei due mi dà il seguente errore:
Impossibile stabilire una connessione al database.
Se non è stato ancora creato il database SQL Server, chiudere lo strumento Amministrazione sito Web, utilizzare l'utilità della riga di comando aspnet_regsql per creare e configurare il database, quindi riavviare lo strumento per impostare il provider.


Non riesco a risolvere la questione qualcuno può aiutarmi?

Pinky Profilo | Junior Member

Forse ti basta affiancare alla connection string per Entity Framework una connection string standard e usare questa per la gestione del sito.
Se funziona probabilmente i vari xxxProvider non supportano quel tipo di connessione (la sintassi che usa).

Ciao
Alessandro

Gluck74 Profilo | Guru

Ma le membership e le role ci sono nel database???

Questo problema solitamente di presenta quando il tool di configurazione accede ad un DB che non ha tutte le tabelle per la configurazione delle member e roles.
dentro il tuo database dovresti trovarti un sacco di tabelle tutte denominate aspnet.<tabella>, che solitamente si registrano con il comando "Aspnet_regsql" per SQLServer. non saprei però per mySQL.

ciao

sanfra Profilo | Junior Member

No che non ci sono, dovrei farli io con aspnet_regsql e aggiungerli nel mio db in mysql, il problema è che lui non vede proprio nessun provider.


Io ho creato tre tabelle nel mio db (Users,Roles,UserInRoles), anche perchè per quello che devo fare, bastano.

Io per il momento nel metodo ValidateUser che eredito dalla classe astratta MembershipProvider gli ho fatto un collegamento nella forma che vuole ADo.NET entity framework

in modo che almeno mi possa loggare e andare avanti oppure essere reindirizzato su un errore.


Mi stavo chiedendo, che asp.net 3.5 però tramite La coonfigurazione sua, ti crea un file xml che dice che questa cartella può utilizzarla solo il determinato ruolo che tu imposti, io come faccio senza il tool di configurazione?


GRazie ancora

Gluck74 Profilo | Guru

he he, te lo fai a manina nel web config...... ;-))

Cosa devi limitare? l'accesso ad alcuni file e/o sezioni del sito?

leggi da questi link che ti aiuteranno:
http://msdn.microsoft.com/en-us/library/6hbkh9s7(VS.80).aspx
http://authors.aspalliance.com/aspxtreme/webapps/aspnetauthorization.aspx
http://msdn.microsoft.com/en-us/library/wce3kxhd(VS.80).aspx
http://forums.asp.net/p/1402097/3037349.aspx
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