Membership and Role Provider con MySql en ASP.NET 2.0

Bueno, estaba yo trabajando placidamente en la oficina, cuano un amigo me comenta que necesitaba manejar Membership and Role Provider con MySQL, y bueno uno asi tenga trabajo hasta no dar mas, pues les colabora, jeje (en que se mete uno, por buen amigo), pero bueno, deje a un lado mis obligaciones y me puse a investigar, por que la verdad ni idea de como vincular .NET con MySql.

Ya todos saben que es MySQL, asi que para que entrar en detalles. Bueno una cosa es tranbajar con consultas y otra muy distinto con proveedores. Lo primero descargar el conertor .NET, por favor no descarguen la version 5.2, no todo lo que se encuetra en internet es verdad. Despues de hacer algo sencillo como una consultica, y probar que todo este bien, proceguimos a investigar lo de Membership and Role.

En este punto es donde se pone lo bueno, despues de buscar en san google y descargar ejemplos, probar y demas. como por ejemplo un proyecto que esta en Codeplex. CodeFxMySqlProvider es una libreria que nos permite hacer lo que necesitaba, pero oh sopreso no funciono (Ya conezaba cristo a padecer).  Despues de perder tiempo, probe la facil.

Primero la conexion. lo que no me gusto es que la conexion tiene que ir asociada a una cuenta sql, en fin toca encriptar la conexion. No olvidar importar MySql.Data, busquen el componente en la gac, y tambien MySql.Web.dll, que se encuentra en C:Archivos de programaMySQLMySQL Connector Net 5.1.5Web Providers

   1: <connectionStrings>
   2:   <remove name="LocalMySqlServer"/>
   3:   <add name="LocalMySqlServer" connectionString="Datasource=localhost;Database=simpleproviders;uid=root;pwd=root;"
   4:   providerName="MySql.Data.MySqlClient"/>
   5: </connectionStrings>

Despues de todo esto, lanzamos la herramienta de administracion. Basicamente son los mismo pasos solo que hay que cambiar el proveedor, ya que por defecto esta el de Sql server, en las opciones avanzada esocgemos.

Mysql 

Y para probar colocamos un control de login y un loginname y voala.

Mysql1

Estas son las tablas que se crean.

Mysql2

Bueno espero les sirva este breve ejemplo.

Saludos.

Romny Duarte

Publicado por

Romny Duarte

Ingeniero de sistemas con experiencia en desarrollo web y móvil, geek, amante de la lectura y de la tecnología.

12 comentarios en “Membership and Role Provider con MySql en ASP.NET 2.0”

  1. Hola Rommy, genial el tema que tocas!

    Sólo par acotar, que si descargas el connector para .NET: http://dev.mysql.com/downloads/connector/net/5.1.html, ya tienes las clases (providers) para mySql, pero sólo para Membership y Role.

    CodeFx.MySqlProviders, tiene clases similares, pero usan el framework: http://www.codeplex.com/CodeFx, además de tener implementados los providers de profiles, y Personnalization.

    P.D.: Otro detalle, si no existe el provider (clases), pues si hay algún conector para .NET de la base de datos, pues tu mismo te puedes crear propia clase, y que ganas con eso?, pue aprovechar todo lo que ya tiene ASP.NET construido bajo el modelo de providers. Y hasta podrías personalizar el modelo de base de datos, pero ese es otro rollo…

    Saludos,

  2. Sip, otro gran roollo, el problema con CodeFx es que todavia no tiene soporte para la herramienta de administracion de asp.net, cosa que se podie solucionar cuando ya este el conector 5.2 en pleno.

  3. bueno He usado mysql algun tiempo atras y con .net recientemente. la mezcla es buena y se saca partido a este excelente motor de bd. los providers es nuevo y me ha funcionado con la version 5.1.6.0 de MySQl.data la parte de membership sin embargo mmm lo de roleprovider no quiere andar saca una exception de key null…any idea???????

    salu2.

  4. Estoy tratando de instalar estas utilidades, pero obtengo errores,

    Unable to initialize provider. Missing or incorrect schema

    he seguido todos los pasos y nada, tengo 4 dias de andar buscando y a todos los que he leido les funcioa.

    Victor E, Diaz
    mysql conector 5.2.3.0
    mysql 5.0
    VS 2008 C#
    vdiazharrobagmail.com

  5. Vale la pena destacar lo siguiente:
    1. Debes tener en la carpeta bin, los archivos MySQL.data.dll y MySQL.Web.dll, los cuales puedes copiar desde el lugar donde instalaste el conector de Mysql, generalmente en archivos de programa, MySQL

    2. La implementación de:
    1: 2: 3: 5:

    NO puede estar dentro de la región: de tu web.config

  6. Saludos:

    Me pasa lo mismo (el mismo error) que Victor E, Diaz. y no sé que es. Claro está que estoy recién aprendiendo. Si alguien puede ayudar se lo agradeceré.
    Los datos mios
    mysql conector 5.2.5.0
    mysql 5.1.30
    VS 2008 VB

    gracias

    Oscar

  7. Muy bueno el post..

    Tenia una pregunta como aplico esta configuracion en el webconfig, me refiero al ..

    Les agradeceria de antemano su ayuda.. Saludos

    Fernando

  8. Se me olvidava.. no encuentro los dll’s que comentas en la direccion que colocastes en el post.. descargo el archivo pero no encuentro los dll..

    Saludos.. Gracias

  9. Hola, ya llevo mucho tiempo tratando que funcione y no me resulta. Mi conector es la versión 5.2.5, será eso?. Llegué al punto de colapsar con tanta cosa, no doy más. Alguien puede ser amable y explicar mejor como se conecta ya que me sale error y no sé como crear las tablas que dice el artículo, que según veo se crean solas. Estoy confundido …
    gracias Oscar

  10. hola!
    ya realize todo lo que se menciona,y me resulta un error en me podrian dar una orientación por favor estoy usando
    MySQL conector 5.1.7.0
    MySQL server 5.1.7.0
    VS 2008 C#
    saludos gracias

  11. Hola, esta muy claro el post e hice todos los pasos pero no se cuando se crean las tablas ya que en la herramienta de administracion de asp.net al ir a la pestaña de seguridad me manda un error y no puedo crear el rol como en sql si alguien me puede ayudar se lo agradeceria mucho.

    saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *