My ERP web application written in c#.net throwing this error frequently
I have Globals.cs file under App_Code folder like:
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.SqlClient;
using System.Data.Sql;
public static class Globals
{
public static string mycon = ConfigurationManager.ConnectionStrings["WebConnStr"].ConnectionString;
public static SqlConnection con = new SqlConnection(mycon);
public static SqlCommand cmd = new SqlCommand();
public static SqlDataReader dr;
public static void Initialize(string CmdType, string CmdText)
{
try
{
if (con.State == ConnectionState.Open)
{
con.Close();
}
con.Open();
cmd.Connection = con;
if (CmdType == "StoredProcedure")
{
cmd.CommandType = CommandType.StoredProcedure;
}
else
{
cmd.CommandType = CommandType.Text;
}
cmd.CommandText = CmdText;
cmd.Parameters.Clear();
}
catch (Exception ex)
{
}
}
}
my connection string in web.config looks like:
<connectionStrings>
<add name=WebConnStr connectionString="Data Source=servername;Initial Catalog=dbname;User ID=username; Password=12345" providerName="System.Data.SqlClient"/>
</connectionStrings>
my sample aspx.cs codes like:
Gridview Bind:
DataTable dt = new DataTable();
Globals.Initialize("StoredProcedure", "[sp_getemp]");
Globals.dr = Globals.cmd.ExecuteReader();
dt.Load(Globals.dr);
GridView1.DataSource = dt;
GridView1.DataBind();
Insert Query:
Globals.Initialize("StoredProcedure", "[sp_insertemp]");
Globals.cmd.Parameters.AddWithValue("@EmpID", txtempid.Text);
Globals.cmd.ExecuteNonQuery();
Data Reading:
private string GetEmpName(string empcode)
{
Globals.Initialize("Text", "SELECT EmpName from tbl_emp where EmpID=@EmpID");
Globals.cmd.Parameters.AddWithValue("@EmpID", empcode);
Globals.dr = Globals.cmd.ExecuteReader();
if (Globals.dr.Read() == true)
{
return Globals.dr["EmpName"].ToString();
}
else
{
return "";
}
}
May I know what might have gone wrong in Globals.cs file and how do I fix it?