È possibile configurare ASP.NET MVC 2 per lavorare con un database MySQL?Come configurare ASP.NET MVC 2 con MySQL?
risposta
Suppongo che Visual Studio Professional 2008, abbia accesso a un'istanza del server MySQL e abbia un'esperienza di sviluppo da moderata ad avanzata. Questo MAGGIO funziona con edizione Web VS2008, ma non del tutto sicuro.
- Se non lo avete, installare MySQL Connector for .NET (6.2.2.0, al momento di questa scrittura-up)
- Facoltativo: installare MySQL GUI Tools
- Se non lo avete, installare MVC 2 RTM, o meglio ancora, utilizzare Microsoft Web Platform Installer. (UPDATE: MVC 2 è stato rilasciato per un po 'di tempo)
- Creare un database MySQL vuoto. Se non si desidera accedere alla propria applicazione con l'account utente root MySQL (non sicuro), creare un account utente e assegnare i privilegi appropriati (al di fuori dell'ambito di questo articolo).
- Creare una nuova applicazione MVC 2 in Visual Studio
- Nell'app MVC 2, fare riferimento a MySql.Web.dll. Sarà nel tuo GAC, o nella cartella che l'installer di MySQL Connector ha messo.
Modificare la porzione di stringhe di connessione del vostro 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.
Modificare la parte dei membri del 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.
Modifica la parte del gestore di ruolo del tuo 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.
Modificare la porzione di profilo del vostro 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>
A questo punto, si dovrebbe essere in grado di eseguire l'applicazione e hanno il difetto ASP La home page di .NET MVC 2 viene visualizzata nel browser. Tuttavia, potrebbe essere una buona idea eseguire prima lo Strumento di configurazione Web ASP.NET (nei menu principali di Visual Studio: Progetto -> Configurazione ASP.NET). Una volta avviato lo strumento, controlla ognuna delle schede; nessun errore = tutto bene.
Lo strumento di configurazione Nathan Bridgewater's blog era essenziale per ottenere questo funzionamento. Complimenti, Nathan. Cerca lo strumento "Strumento di configurazione" a metà della pagina.
Il token di chiave pubblica sul MySql.web.dll che ho postato qui non dovrebbe cambiare in qualunque momento presto. Ma nel caso in cui si sospetti una stringa di token errata da copia e incolla o qualsiasi altra cosa, basta usare la riga di comando di Visual Studio per eseguire: "sn -T [Path \ to \ your.dll]" per ottenere il token di chiave pubblica corretto.
In questo caso, ASP.NET MVC 2 è in esecuzione su MySQL. Saluti!
Grazie NovaJoe! Ho recentemente copiato questo strumento sulla sua pagina per renderlo più facile da trovare. http://www.integratedwebsystems.com/tools-source/ – Nathan
Noice! E grazie a TE, amico mio. È stata una battaglia in salita e il tuo strumento lo ha reso possibile. Nathan per la vittoria! – NovaJoe
Fantastico! Penso che creerò un nuovo account su StackOverflow per votare di nuovo! ;) –
Credo in "10. Modifica la parte del profilo del tuo sito web.config ::"
<profile>
<providers>
<clear /> ...
<add type="MySql.Web.Security.MySQLProfileProvider,......
type = deve essere: type = "MySql.Web.Profile.MySQLProfileProvider"
perché in "MySql.Web.Security" non ho trovato alcun metodo MySQLProfileProvider. (ma usando la versione 6.4.4. per NET 4.0)
E almeno, è necessario creare le proprie classi per creare le tabelle del database, se non esiste un database configurato pronto. Harald
Buona nota. Grazie HL1234. Non sto verificando questo, ma potrebbe essere stato un errore di battitura pure. Tuttavia, forse sono gli spazi dei nomi che sono cambiati. Non sono sicuro. – NovaJoe
Avevo bisogno di fare questa modifica per farlo funzionare. – AverageMarcus
- 1. Asp.net MVC 2 caching
- 2. ASP.NET MVC problema 2 con UpdateModel
- 3. ASP.NET MVC 2 azione asincrona con timeout
- 4. asp.net mvc 2 a MVC 4
- 5. Utilizzo di ASP.NET MVC 2 con Ninject 2 da zero
- 6. ASP.NET MVC 2 - Prefisso ViewModel
- 7. ASP.NET MVC 2 su mono
- 8. Impostazione ASP.NET MVC 4 o 5 progetto con Angular 2
- 9. Configurare l'applicazione ASP.NET MVC 4 con il database Oracle
- 10. Come convalidare due proprietà con ASP.NET MVC 2
- 11. Come configurare/configurare Log4Net con ASP.NET (incluso MVC) C# in Visual Studio 2012 ~
- 12. ASP.NET MVC: come configurare web.config per l'autenticazione LDAP?
- 13. ASP.NET MVC 5 e WebApi 2 Autenticazione
- 14. ASP.NET MVC 2 - HTML.EditorFor() e Custom EditorTemplates
- 15. ASP.NET MVC 2 + jQuery lightbox + login
- 16. Asp.Net MVC 2 Visualizzazione a discesa System.Web.MVC.SelectListItem
- 17. Amazon Web Services + ASP.NET MVC 3 + MySql
- 18. ASP.NET MVC 2 Problema - Dot in Route
- 19. Come configurare Nibernate fluente con MySQL
- 20. Come configurare due database con MySQL Workbench?
- 21. Download file in Asp.Net MVC 2
- 22. Problema CultureInfo con Modelbinding double in asp.net-mvc (2)
- 23. Come configurare ASP.NET Identity ApplicationUserManager con StructureMap
- 24. come configurare asp.net con .net 4.5
- 25. Come configurare Elmah con l'API Web ASP.NET
- 26. ASP.NET MVC 2 Preview 2: Aree duplicano regolatore problema
- 27. Associazione TimeSpan generica in Asp.NET MVC 2
- 28. ModelState.AddModelError a livello di modulo con ASP.NET MVC 2 RC
- 29. Html.LabelFor testo specificato [ASP.NET MVC 2]
- 30. Apprendimento ASP.NET MVC inizia con 1 o 2 o 3
Il blogging funziona perfettamente e viene descritto nelle domande frequenti, tuttavia è necessario porre la domanda nella domanda e pubblicare la risposta come risposta. Ciò consente alle persone di +/- la tua risposta e di pubblicare anche le proprie risposte. –
Buon post. Direi che questo vale per qualsiasi app asp.net, non solo per ASP.NET MVC. – Craig
Prendere la mia modifica, prendere tutto dopo la prima riga e postarla come risposta e quindi eliminarla dalla domanda. Inoltre, non lo fai solo perché non ha capito l'approccio al blogging su SO, molti dei neofiti pensano che sia contro le regole. Lo scoprirà –