Jeg går ud fra, at du har Visual Studio Professional 2008, har adgang til en forekomst af MySQL-server og har moderat til avanceret udviklingserfaring. Dette MÅSKE fungere med VS2008 Web edition, men slet ikke sikkert.
- Hvis du ikke har det, skal du installere MySQL Connector til .NET (6.2.2.0 på tidspunktet for denne opskrivning)
- Valgfrit:Installer MySQL GUI-værktøjer
- Hvis du ikke har det, skal du installere MVC 2 RTM , eller endnu bedre, brug Microsofts Web Platform Installer . (OPDATERING: MVC 2 har nu været udgivet i et stykke tid)
- Opret en tom MySQL-database. Hvis du ikke ønsker at få adgang til din applikation med MySQL root-brugerkontoen (usikker), skal du oprette en brugerkonto og tildele de relevante privilegier (uden for rammerne af denne skrivelse).
- Opret et nyt MVC 2-program i Visual Studio
- I MVC 2-appen skal du henvise til MySql.Web.dll. Det vil enten være i din GAC eller i den mappe, som MySQL Connector-installationsprogrammet lagde det.
-
Rediger forbindelsesstrenge-delen af din 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.
Rediger medlemskabsdelen af din 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.
Rediger rolleadministratordelen af din 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.
Rediger profildelen af din 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>
På dette tidspunkt burde du være i stand til at køre appen og få standard ASP.NET MVC 2-hjemmesiden op i din browser. Det kan dog være en bedre idé først at køre ASP.NET-webkonfigurationsværktøjet (i Visual Studios topmenuer:Projekt -> ASP.NET-konfiguration). Når værktøjet starter, skal du tjekke hver af fanerne; ingen fejl =alt i orden.
Konfigurationsværktøjet på Nathan Bridgewaters blog var afgørende for at få dette til at fungere. Tak, Nathan. Se efter overskriften "Konfigurationsværktøj" halvvejs nede på siden.
Den offentlige nøgle-token på MySql.web.dll, som jeg har postet her, burde ikke ændre sig lige nu. Men hvis du har mistanke om en dårlig token-streng fra kopiering og indsættelse eller hvad som helst, skal du bare bruge Visual Studio-kommandolinjen til at køre:"sn -T [Path\to\your.dll]" for at få det korrekte offentlige nøgletoken.
Der har du det, ASP.NET MVC 2 kører over MySQL. Skål!