MySQL 数据库和 ASP.NET 全局连接

MySQL database and ASP.NET global connection

我开发了一个网站,其中我使用了 ASP.NET 和 VB.NET 作为后端编程语言和 MySQL 数据库。我已经在本地计算机上使用 ASP.NET 和 MySQL 数据库连接器连接到 运行 网站,并且运行良好。 web.config文件的代码如下:

<?xml version="1.0"?>
<!--
    For more information on how to configure your ASP.NET application, please
    visit
    http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
    <system.web>
        <trust level="Medium"/>
        <customErrors mode="Off" defaultRedirect="Home.aspx"/>
        <compilation debug="true" strict="false" explicit="true"
                     targetFramework="4.0">
            <assemblies>
                <add assembly="MySql.Data, Version=6.9.9.0, Culture=neutral,
                     PublicKeyToken=C5687FC88969C44D"/>
            </assemblies>
        </compilation>
    </system.web>
</configuration>

但是现在我已经把这个网站和数据库上传到全球服务器上,并且把全球数据库连接放在了我的代码中。现在 web.config 文件的代码是

<?xml version="1.0"?>
<!--
    For more information on how to configure your ASP.NET application, please
    visit
    http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
    <connectionStrings>
        <add name="myConnectionString" connectionString= "Server=globalservername;
             Database=databasename; Uid=userid; Pwd=passwd;"
             providerName="MySql.Data.MySqlClient" />
    </connectionStrings>
    <system.web>
        <trust level="Medium"/>
        <customErrors mode="Off" defaultRedirect="Home.aspx"/>
        <compilation debug="true" strict="false" explicit="true"
                     targetFramework="4.0">
        </compilation>
    </system.web>
</configuration>

当我打开任何页面时,它会显示以下错误

Compiler Error Message: BC30002: Type 'MySqlConnection' is not defined.

在我项目的每个 Visual Basic 文件(连接字符串)中的这一行中:

Dim SQLConnection As New MySqlConnection("Server=globalservername;
Database=databasename; Uid=userid; Pwd=passwd;")

我应该在 web.config 文件中添加或删除什么以消除此错误?

您可能缺少生产环境中所需的 DLL 文件,MySQL.Data。您可以使用 NuGet 包* MySQL.Data* 然后构建和部署。

或者,您可以将 MySQL.Data DLL 文件放在您的 bin 文件夹中并部署。

先做这个:

Mysqlopen("db")

应该可以。如果没有,请确保您有 VB 2005。它不适用于 Visual Basic 6.0。如果这不起作用,那么您可以将 运行 和 SQL 作为一个单独的进程并使用 Visual Basic 来调用它。