<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="connString" connectionString="Data Sourse=.;Initial Catalog=NetBarMIS;uid=xjqaini;pwd=237711"/>
</connectionStrings>
</configuration>
上面数据库链接
namespace NetBarMIS.Cls
{
    class DBHelper
    {
        private static string sConn = System.Configuration.ConfigurationManager.ConnectionStrings["connString"].ToString();
        private static SqlConnection conn = new SqlConnection(sConn);        /// <summary>
        /// 打开数据库连接
        /// </summary>
        public static void Open()
        {
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
        }
        /// <summary>
        /// 关闭数据库连接
        /// </summary>
        public static void Close()
        {
            if (conn.State == ConnectionState.Open)
            {
                conn.Close();
            }
        }
        /// <summary>
        /// Scalar方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static object ExecuteScalar(string sql)
        {
            object obj = null;
            SqlCommand comm = new SqlCommand(sql, conn);            try
            {
                Open();
                obj = comm.ExecuteScalar();
            }
            catch
            {                throw;
            }
            finally
            {
                Close();
            }
            return obj;
        }
        /// <summary>
        /// NonQuery方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static int ExecuteNonQuery(string sql)
        {
            int iResult;
            SqlCommand comm = new SqlCommand(sql, conn);            try
            {
                Open();
                iResult = comm.ExecuteNonQuery();
            }
            catch
            {                throw;
            }
            finally
            {
                Close();
            }
            return iResult;
        }
        /// <summary>
        /// Reader方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static SqlDataReader ExecuteReader(string sql)
        {
            SqlDataReader dr;
            SqlCommand comm = new SqlCommand(sql, conn);
            try
            {
                Open();
                dr = comm.ExecuteReader();
            }
            catch
            {                throw;
            }
            return dr;
        }
        /// <summary>
        /// 填充方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static DataSet Execute(string sql)
        {
            DataSet ds = new DataSet();            SqlDataAdapter da = new SqlDataAdapter(sql, conn);            try
            {
                da.Fill(ds);
            }
            catch
            {                throw;
            }
            return ds;
        }
    }
}
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities.Sync\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“G:\NetBarMIS\NetBarMIS\bin\Debug\NetBarMIS.vshost.exe”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\Microsoft.VisualBasic\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualBasic.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Design\2.0.0.0__b03f5f7f11d50a3a\System.Design.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Deployment\2.0.0.0__b03f5f7f11d50a3a\System.Deployment.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
线程 0xf7c 已退出,返回值为 0 (0x0)。
线程 0xef0 已退出,返回值为 0 (0x0)。
线程 0xc90 已退出,返回值为 0 (0x0)。
“NetBarMIS.vshost.exe”(托管): 已加载“G:\NetBarMIS\NetBarMIS\bin\Debug\NetBarMIS.exe”,符号已加载。
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\System.Data.resources\2.0.0.0_zh-CHS_b77a5c561934e089\System.Data.resources.dll”,未加载符号。
在 System.ArgumentException 中第一次偶然出现的“System.Data.dll”类型的异常
“NetBarMIS.vshost.exe”(托管): 已加载“C:\WINDOWS\assembly\GAC_MSIL\mscorlib.resources\2.0.0.0_zh-CHS_b77a5c561934e089\mscorlib.resources.dll”,未加载符号。
在 System.TypeInitializationException 中第一次偶然出现的“NetBarMIS.exe”类型的异常

解决方案 »

  1.   

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.SqlClient;namespace NetBarMIS
    {
        public partial class FrmLogin : Form
        {
            FrmLoading frm;
            public FrmLogin(FrmLoading frm1)
            {
                frm = frm1;
                InitializeComponent();
            }
           // class dbhelper  
           // {
            //    private static string connstring = "Data Sourse=.;Initial Catalog=NetBarMIS;uid=xjqaini;pwd=237711";
              //  public  static SqlConnection connection = new SqlConnection(connstring);
           // }
        
            /// <summary>
            /// 退出按钮
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnExit_Click(object sender, EventArgs e)
            {
                Application.ExitThread();
            }        /// <summary>
            /// 登录按钮
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnLogin_Click(object sender, EventArgs e)
            {
                //输入验证:1 非空验证
                if (tbPwd.Text.Trim().Length > 0)
                {
                    string sSql = string.Format("select count(*) from Manager where UserName= '{0}' and UserPwd = '{1}'",
                    cboUser.Text.Trim(), tbPwd.Text.Trim());                try
                    {
                        int iResult = (int)Cls.DBHelper.ExecuteScalar(sSql);
                        if (iResult > 0)
                        {
                            //MessageBox.Show("登录成功");
                            //赋值全局变量
                            Cls.UserHelper.UserName = cboUser.Text.Trim();
                            Cls.UserHelper.UserPwd = tbPwd.Text.Trim();
                            frm.flag = 1;
                            this.Close();                    }
                        else
                        {
                            MessageBox.Show("用户名不存在或密码错误!", "温馨提示");
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("请输入密码", "温馨提示");
                }
            }        private void open()
            {
                throw new Exception("The method or operation is not implemented.");
            }        private void btnChangePwd_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < 3; i++)
                {
                    this.Height += 30;
                }
                btnExit.Hide();
                btnLogin.Hide();
                btnChangePwd.Hide();
                btnChange.Show();
                btnReturn.Show();
                gbChangePwdInfo.Show();
            }        private void btnReturn_Click(object sender, EventArgs e)
            {
                gbChangePwdInfo.Hide();
                for (int i = 0; i < 3; i++)
                {
                    this.Height -= 30;
                }
                btnExit.Show();
                btnLogin.Show();
                btnChangePwd.Show();
                btnChange.Hide();
                btnReturn.Hide();
            }        private void FrmLogin_Load(object sender, EventArgs e)
            {
                //初始化下拉框的选项
                string sSql = "select UserID, UserName from Manager where UserState = 'Normal'";
                try
                {
                    DataTable dt = Cls.DBHelper.Execute(sSql).Tables[0];                //绑定数据源
                    cboUser.DataSource = dt;
                    //指定显示的列
                    cboUser.DisplayMember = "UserName";
                    //根据显示值来获取对应的ID值
                    cboUser.ValueMember = "UserID";
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }        private void btnChange_Click(object sender, EventArgs e)
            {
                if (tbPwd.Text.Trim().Length > 0 && tbChangePwd1.Text.Trim().Length > 0)
                {
                    if (tbChangePwd1.Text.Trim().ToString() == tbChangePwd2.Text.Trim().ToString())
                    {
                        string sSql1 = string.Format("select count(*) from Manager where UserName = '{0}' and UserPwd = '{1}'", cboUser.Text, tbPwd.Text.Trim());
                        try
                        {
                            int iR = (int)Cls.DBHelper.ExecuteScalar(sSql1);                        if (iR > 0)
                            {
                                string sSql = string.Format("update Manager set UserPwd = '{0}' where UserName = '{1}'",
                                                    tbChangePwd1.Text.Trim(), cboUser.Text);
                                try
                                {
                                    int iResult = Cls.DBHelper.ExecuteNonQuery(sSql);
                                    if (iResult > 0)
                                    {
                                        MessageBox.Show("密码修改成功!", "成功",MessageBoxButtons.OK,MessageBoxIcon.Information);
                                        tbPwd.Text = "";
                                        gbChangePwdInfo.Hide();
                                        for (int i = 0; i < 3; i++)
                                        {
                                            this.Height -= 30;
                                        }
                                        btnExit.Show();
                                        btnLogin.Show();
                                        btnChangePwd.Show();
                                        btnChange.Hide();
                                        btnReturn.Hide();
                                    }
                                    else
                                    {
                                        MessageBox.Show("密码修改失败!", "失败", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
                                }
                                catch (Exception ex)
                                {
                                    MessageBox.Show(ex.Message);
                                }
                            }
                            else
                            {
                                MessageBox.Show("原始密码不正确");
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                    else
                    {
                        MessageBox.Show("抱歉,您两次输入的密码不一致", "温馨提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    MessageBox.Show("抱歉,您的密码不允许为空", "温馨提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }       // private void frmLogin_FormClosing(object sender, FormClosingEventArgs e)
           // {
               // Application.ExitThread();
           // }    }
    }
    登陆界面代码
      

  2.   

    方法内部发生了错误
    看看sqlhelper
    using (SqlConnection conn = new SqlConnection(connString))
      {
      conn.Open();
      SqlCommand cmd= new SqlCommand(sql, conn);
      cmd.CommandType = CommandType.StoredProcedure;
      return cmd;
      }  
      

  3.   

      {
      conn.Open();
      SqlCommand cmd= new SqlCommand(sql, conn);
      cmd.CommandType = CommandType.StoredProcedure;
      return cmd;
      }