【问题标题】:problem in connectionstring in asp.netasp.net中连接字符串的问题
【发布时间】:2011-06-11 08:57:28
【问题描述】:

private string conString = "Data Source=173.56.33.6;Database=musicapp;User ID=guest;Password=guest"; 当时我在本地数据库上工作,我的应用程序成功地与 mysql 数据库交互。当把数据库放在服务器上时,我的应用程序仍然采用旧的连接字符串,数据存储在本地数据库而不是服务器上。 怎么了?

【问题讨论】:

  • 它是否还在使用来自 web.config 或 app.config 的连接字符串?如果没有,请确保在构建之前清理代码,否则如果使用 conString 进行连接会很奇怪。
  • 我无法在我的 Visual Studio 2008 中看到干净的选项。我该怎么办?

标签: asp.net mysql connection-string


【解决方案1】:

我会一起删除硬编码的连接字符串。您的配置文件中有一个专门用于此目的的部分:

<connectionStrings>
    <add name="MusicApp" connectionString="Data Source=173.56.33.6;Database=musicapp;User ID=guest;Password=guest;" />
</connectionStrings>

然后你可以读出:

string connection = ConfigurationManager.ConnectionStrings["MusicApp"].ConnectionString;

【讨论】:

    【解决方案2】:

    我认为您的问题是您的代码中硬编码了连接字符串(作为您在上面显示的私有字符串)。更好的方法是将其存储在配置文件中,使用 VS 中的设置并选择 ConnectionString 作为类型。

    【讨论】:

    • 这样做了。即使我不传递连接字符串,它也会存储数据并且不会给我错误。这是怎么回事?
    • 它可能使用了一些默认值。打开命令时添加一些日志记录,这样您就可以看到字符串是什么,然后弄清楚它是从什么读取的。
    【解决方案3】:

    确保在将数据库传输到服务器时是否更新了连接字符串。在任何情况下,最好将连接字符串存储在 web.config 中,以便您可以在您的数据库更改或转移到另一个位置时对其进行修改。 web.config 中连接字符串的这种更改不需要您重新构建应用程序。虽然如果您的连接字符串在代码中是硬编码的,那么您需要在更改连接字符串时重新构建您的应用程序。

    【讨论】:

      【解决方案4】:

      如果数据源=173.56.33.6;是你的服务器数据库的位置试试这个 Data Source=\173.56.33.6;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-21
        • 1970-01-01
        • 2013-08-22
        • 1970-01-01
        • 2011-09-20
        • 1970-01-01
        相关资源
        最近更新 更多