【问题标题】:Why does global.asax change sql connection?为什么 global.asax 会改变 sql 连接?
【发布时间】:2010-09-23 23:47:32
【问题描述】:

在 asp.net 3.5 中,我有一个问题,如果我将 global.asax 上传到远程 Web 服务器,应用程序开始寻找我的本地 sql 服务器并最终超时。由于 sql server 登录,我对本地和远程使用不同的配置文件。本地是windows auth,远程是sql server auth。但是,这些信息都没有存储在 global.asax 中。 global.asax 只有

但是一旦上传,某些东西会导致远程尝试查找本地 web.config 的 sql server 登录名。删除遥控器上的 global.asax 会导致一切正常。

有什么想法吗?

【问题讨论】:

    标签: .net asp.net web-config connection global-asax


    【解决方案1】:

    你检查过它继承的类吗?它看起来是继承自 myapp.Global

    【讨论】:

      【解决方案2】:

      在 global.asax 文件中会导致继承类被使用,继承类中是否有任何代码可能导致更改?

      .asax 可能是空白的,但这并不意味着继承的类是。

      【讨论】:

        【解决方案3】:

        检查 myapp.Global 类是否访问 Membership、Role 或 Profile 提供者;每个默认设置都使用本地 SQL 服务器连接。

        【讨论】:

        • 不——不使用这三个中的任何一个。
        【解决方案4】:

        好的,在数据​​访问DLL中,myapp.DataAccess.Properties有一个

            [global::System.Configuration.DefaultSettingValueAttribute("Data Source=VISTADEV;Initial Catalog=Fin;Integrated Security=True")]
            public string FinConnectionString {
                get {
                    return ((string)(this["FinConnectionString"]));
                }
            }
        

        这是我的本地盒子。我看到了问题。在 global.asax.cs 中,而不是做:

        使用(DataAccess.FinDBDataContext 上下文 = 新 DataAccess.FinDBDataContext(Configuration.DbConnection))

        我在做

        使用(DataAccess.FinDBDataContext 上下文 = 新 DataAccess.FinDBDataContext())

        这会带回默认值而不是配置值。问题解决了。谢谢。

        【讨论】:

          猜你喜欢
          • 2021-10-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-22
          • 1970-01-01
          • 2020-05-24
          相关资源
          最近更新 更多