none
Pb entre le SQLDataSource et MySql RRS feed

  • Question

  • Bonjour,

    D'abord le cadre de mon problème.
    J'ai créé un site internet sur Visual Web Developer 2010 Express Edition. Ce site utilise (contrainte extérieure) une base de donnée Mysql 5.5.
    Pour cela, j'ai donc installé le connecteur .Net version 6.4.4 de Mysql.

    J'ai mis à jour mon fichier Web.config et créé des pages d'enregistrement d'utilisateur et de connexion.
    Tout c'est bien déroulé, VWD a créé les tables utiles dans la base de données, lorsque j'ai créé un utilisateur de test, il a bien été enregistré en base, et quand j'ai testé la connexion, le nouvel utilisateur a bien été reconnu.
    Donc ici tout s'est bien déroulé.

    Voici le fichier web.config :

    <?xml version="1.0"?>
    <configuration>
      <configSections>
        [...]
      </configSections>
      <connectionStrings>
        <add name="AEC_MYSQL" connectionString="Data Source=localhost;Database=test_bdd;Uid=XXX;Pwd=XXX;"
          providerName="Mysql.data.mysqlclient" />
        <add name="data_cardapio" connectionString="Data Source=localhost;Database=test_bdd;Uid=XXX;Pwd=XXX;"
          providerName="Mysql.data.mysqlclient" />
      </connectionStrings>
      <system.web>
        <membership defaultProvider="MySQLMembershipProvider" userIsOnlineTimeWindow="30">
          <providers>
            <clear/>
            <add name="MySQLMembershipProvider"
                 type="MySql.Web.Security.MySQLMembershipProvider"
                 connectionStringName="AEC_MYSQL"
                 enablePasswordRetrieval="false"
                 enablePasswordReset="true"
                 requiresQuestionAndAnswer="true"
                 requiresUniqueEmail="true"
                 passwordFormat="Hashed"
                 maxInvalidPasswordAttempts="5"
                 minRequiredPasswordLength="6"
                 minRequiredNonalphanumericCharacters="0"
                 passwordAttemptWindow="10"
                 applicationName="AEC_Site"
                 autogenerateschema="true"/>
          </providers>
        </membership>
        <roleManager enabled="true" defaultProvider="MySqlRoleProvider">
          <providers>
            <clear />
            <add connectionStringName="AEC_MYSQL"
                 name="MySqlRoleProvider"
                 type="MySql.Web.Security.MySQLRoleProvider"
                 autogenerateschema="true"
                 applicationName="AEC_Site"/>
          </providers>
        </roleManager>
    
        <profile>
          <providers>
            <clear/>
            <add name="MySqlProfileProvider"
                 type="MySql.Web.Security.MySqlProfileProvider"
                 applicationName="AEC_Site"
                 connectionStringName="AEC_MYSQL"
                 autogenerateschema="true"/>
          </providers>
        </profile>
        
      </system.web>
    </configuration>
    


    En revanche, lorsque j'ai voulu utilisé cette connexion pour lire des données dans la base de données (en utilisant le SqlDataSource), je n'ai pas pu, rien ne se passe.
    Le seul message d'erreur que j'obtiens est que
    "le fournisseur de données 'Mysql.data.mysqlclient' est introuvable dans la configuration système.
    Le fournisseur de données  .NET Framework demandé est introuvable. Il n'est peut pas installé."

    Pourtant tout fonctionne pour les utilisateurs !?! Donc tous les éléments sont bien présents non ?

    Si quelqu'un avait une idée du problème, cela m'aiderait énormément.

    Merci d'avance


    Nicolas Merle Utilisateur ASP.NET débutant
    vendredi 9 décembre 2011 11:33

Réponses

Toutes les réponses