我用VS写了个小程序,利用SteupFactory 7.0 打包之后一访问数据库就出异常,请高手指教 这是为毛 ?? 

解决方案 »

  1.   

    什么数据库?如果是sql server,需要客户端安装。如果是远程访问服务器的数据库,检查连接字符串配置。其余数据库需要驱动。
      

  2.   


    是SQL SERVER2005的,已经安装了数据库。连接字符串也没问题。没打包的情况下在VS里面可以正常访问。打包之后就出异常了。
    异常是DBConn类型初始化异常。我的DBConn类型是初始化、获取SQLConnection对象。
      

  3.   


    异常是DBConn类型初始化异常。我的DBConn类型是初始化、获取SQLConnection对象。没打包的情况下在VS里面可以正常访问。打包之后就出异常了。
      

  4.   

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Windows.Forms;
    using System.Configuration;namespace Main.ADO
    {
        static class DBCon
        {
            private static SqlConnection conn;        private static string strConn = ConfigurationManager.AppSettings["conn"].ToString();
            //private static string strConn = "Server=.;Initial Catalog=MFSY_DB;User ID=sa;Password=sa";        /// <summary>
            /// 获取默认连接字符串
            /// </summary>
            /// <returns></returns>
            public static string GetStrConn()
            {
                return strConn;
            }        #region 导入数据库用到的方法        /// <summary>
            /// 获取服务器
            /// </summary>
            /// <returns></returns>
            public static string GetServer()
            {
                return ConfigurationManager.AppSettings["Server"].ToString();
            }        /// <summary>
            /// 获取用户名
            /// </summary>
            /// <returns></returns>
            public static string GetUserId()
            {
                return ConfigurationManager.AppSettings["UserId"].ToString();
            }        /// <summary>
            /// 获取用户名密码
            /// </summary>
            /// <returns></returns>
            public static string GetPassword()
            {
                return ConfigurationManager.AppSettings["Password"].ToString();
            }        #endregion        /// <summary>
            /// 传参连接
            /// </summary>
            /// <param name="strConn"></param>
            /// <returns></returns>
            public static SqlConnection GetConn(string strConn)
            {
                try
                {
                    conn = new SqlConnection(strConn);                if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }
                    return conn;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    return null;
                }
            }        /// <summary>
            /// 获取连接
            /// </summary>
            /// <returns></returns>
            public static SqlConnection GetConn()
            {
                try
                {
                    if (conn == null)
                    {
                        conn = new SqlConnection(strConn);                }
                    if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }
                    return conn;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    return null;
                }
            }        /// <summary>
            /// 关闭连接
            /// </summary>
            /// <param name="conn"></param>
            public static void Close(SqlConnection conn)
            {
                if (conn != null && conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }        /// <summary>
            /// 关闭默认连接对象
            /// </summary>
            public static void Close()
            {
                Close(conn);
            }
        }
    }异常就是提示DBConn类型初始化异常