net - mysql for visual studio
¿Cómo configuro ASP.NET MVC 2 con MySQL? (2)
¿Es posible configurar ASP.NET MVC 2 para trabajar con una base de datos MySQL?
Creo en "10. Modifica la parte del perfil de tu web.config ::"
<profile>
<providers>
<clear /> ...
<add type="MySql.Web.Security.MySQLProfileProvider,......
type = tiene que ser: type = "MySql.Web.Profile.MySQLProfileProvider"
porque en "MySql.Web.Security" no he encontrado ningún método MySQLProfileProvider. (pero utilizando la versión 6.4.4. para .NET 4.0)
Y al menos, tiene que crear sus propias clases para crear las tablas de la base de datos, si no hay una base de datos configurada lista. Harald
Supongo que usted tiene Visual Studio Professional 2008, tiene acceso a una instancia del servidor MySQL y tiene experiencia de desarrollo moderado a avanzado. Esto PUEDE funcionar con la edición web de VS2008, pero no del todo seguro.
- Si no lo ha hecho, instale MySQL Connector para .NET (6.2.2.0 en el momento de este informe)
- Opcional: instalar MySQL GUI Tools
- Si no lo ha hecho, instale MVC 2 RTM , o mejor aún, use el instalador de plataforma web de Microsoft. ( ACTUALIZACIÓN: MVC 2 ha sido lanzado hace bastante tiempo)
- Crear una base de datos MySQL vacía. Si no desea acceder a su aplicación con la cuenta de usuario root de MySQL (inseguro), cree una cuenta de usuario y asigne los privilegios apropiados (fuera del alcance de este informe).
- Crea una nueva aplicación MVC 2 en Visual Studio
- En la aplicación MVC 2, haga referencia a MySql.Web.dll. Estará en su GAC, o en la carpeta que lo puso el instalador de MySQL Connector.
Modifique la parte de las cadenas de conexión de su web.config:
<connectionStrings> <remove name="LocalMySqlServer"/> <add name="MySqlMembershipConnection" connectionString="Data Source=[MySql server host name]; userid=[user]; password=[password]; database=[database name];" providerName="MySql.Data.MySqlClient"/> </connectionStrings>
8.
Modifique la parte de membresía de su web.config:
<membership defaultProvider="MySqlMembershipProvider"> <providers> <clear/> <add name="MySqlMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="MySqlMembershipConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" autogenerateschema="true"/> </providers> </membership>
9.
Modifique la parte del administrador de roles de su web.config:
<roleManager enabled="true" defaultProvider="MySqlRoleProvider"> <providers> <clear /> <add connectionStringName="MySqlMembershipConnection" applicationName="/" name="MySqlRoleProvider" type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" autogenerateschema="true"/> </providers> </roleManager>
10.
Modifique la parte del perfil de su web.config:
<profile> <providers> <clear/> <add type="MySql.Web.Security.MySQLProfileProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" name="MySqlProfileProvider" applicationName="/" connectionStringName="MySqlMembershipConnection" autogenerateschema="true"/> </providers> </profile>
En este punto, debería poder ejecutar la aplicación y hacer que la página de inicio de ASP.NET MVC 2 predeterminada aparezca en su navegador. Sin embargo, puede ser una mejor idea ejecutar primero la herramienta de configuración web ASP.NET (en los menús principales de Visual Studio: Proyecto -> Configuración ASP.NET). Una vez que la herramienta se inicia, echa un vistazo a cada una de las pestañas; sin errores = todo bien.
La herramienta de configuración en el blog de Nathan Bridgewater fue esencial para que esto funcionara. Felicitaciones, Nathan. Busque la "Herramienta de configuración" que se encuentra en la mitad de la página.
El token de clave pública en MySql.web.dll que he publicado aquí no debería cambiar en ningún momento. Pero en caso de que sospeche una cadena de token dañada por copiar y pegar o lo que sea, simplemente use la línea de comandos de Visual Studio para ejecutar: "sn -T [Path / to / your.dll]" para obtener el token de clave pública correcto.
Ahí lo tienen, ASP.NET MVC 2 corriendo sobre MySQL. ¡Aclamaciones!