Tenho visto principalmente sites ASP.NET usando MSSQL como banco de dados. Até eu desenvolvi um há algum tempo. Por que apenas o MSSQL, quando o MySQL, uma alternativa gratuita está disponível. Então, a questão é: É possível integrar um banco de dados MySQL tão facilmente quanto o MSSQL com o aplicativo ASP.NET ou precisamos usar alguma API para fazer isso?
mysql
asp.net-mvc
Pankaj Upadhyay
fonte
fonte
Respostas:
Eu tenho um aplicativo Web ASP.NET/C#/MySQL em execução na produção há cerca de 3 anos. Corre bem. Também o uso para todos os meus trabalhos paralelos. O conector ADO.NET se conecta ao visual studio e funciona tão bem quanto o conector SQLSERVER. Existem algumas dicas embora. Primeiro, não há um equivalente gratuito do Management Studio do SQLSERVER, até onde eu encontrei. Eu uso o Aqua Data Studio, mas custa um pouco. Existem alguns RDMSs gratuitos para MySQL, mas eles não são de forma alguma comparáveis ao Management Studio. Ouvi dizer que o eclipse tem um plugin para o MySQL que é muito bom e gratuito, e ainda não tentei. Além disso, no MySQL, você não pode ALTERAR um procedimento armazenado, apenas pode soltar e criar. Isso causa algumas dores no A no visual studio.
O conector do MySQL ADO.NET é totalmente polimórfico com os namespaces System.Data e System.Data.SqlClient, portanto é fácil ter várias versões de um banco de dados para SQLSERVER e MySQL simultaneamente. Isso é útil se você tiver um cliente que é um amigo da Microsoft e diz porcaria como: "Somos uma loja exclusiva da Microsoft!" como se ele realmente soubesse do que está falando. Isso acontece mais do que você imagina. Em seguida, você pode simplesmente usar seu código SQLSERVER antigo sem precisar fazer nenhuma codificação adicional - se você tiver um bom design para começar.
Minha última crítica é que o MySQL é notório por não manter a compatibilidade com versões anteriores entre o conector .NET e as diferentes versões do mecanismo de banco de dados. Tudo bem, desde que você esteja implantando o servidor com o MySQL, mas se estiver implantando o site em um provedor de hospedagem, tenha cuidado!
Vale a pena o esforço extra na minha opinião, embora tenha algumas das falhas inerentes que muitos projetos de código aberto têm. É, na minha experiência, tão escalável e mais rápido que o ms sqlserver, enquanto que se você conhece o T-SQL, irá capturar a sintaxe do MySQL de forma relativamente rápida.
fonte
ASP.NET como uma tecnologia da web e não está vinculado a nenhum banco de dados específico. Como tal, você pode usar o NHibernate ou métodos padrão de acesso a dados para conectar-se ao MySQL no back-end.
fonte
Seu aplicativo pode se conectar ao banco de dados com a mesma facilidade, mas você pode estar perdendo algumas das integrações do Visual Studio para SQL Server (Projetos do SQL Server). Se você não se importa ou não está muito ligado a eles, isso não importa.
fonte
Se você estiver alternando de um banco de dados para outro durante o curso de um projeto, poderá ter algumas tarefas relacionadas ao banco de dados (migração de dados) a serem executadas se tiver usado tipos específicos do Sql Server. Além disso, se você escreveu procedimentos armazenados, precisará reescrevê-los todos.
Caso contrário, e para novos projetos, não há problema algum. Basta usar o conector ADO.NET: http://dev.mysql.com/downloads/connector/net/
E, como Ryan escreveu, com o ADO.NET você pode conectar-se a qualquer banco de dados que desejar, desde que alguém tenha escrito o conector para ele. E há ... muitos.
fonte
Você pode usar o MySQL com o ASP.NET MVC, como todo mundo já disse antes. A única coisa que você estará perdendo é a CLR Integration with SQL Server . É bom poder escrever procedimentos armazenados em C # se você tiver cálculos complexos e isso é algo que você não pode duplicar usando o MySQL.
fonte