using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
namespace DataAccess
{
public class SQLDAL
{
string SQLConnectionString;
public SQLDAL()
{
SQLConnectionString = string.Empty;
}
public SQLDAL(string SQLConnectionString)
{
this.SQLConnectionString = SQLConnectionString;
}
public enum ExecutionType
{
ReturnNothing = 1,
ReturnScalarValue = 2
}
private string ModifiedSQLQuery(string argSQLQry)
{
argSQLQry = argSQLQry.Replace(" Function ", "[Function]");
argSQLQry = argSQLQry.Replace(" Function,", "[Function],");
argSQLQry = argSQLQry.Replace(".Function", ".[Function]");
argSQLQry = argSQLQry.Replace(" Status ", "[Status]");
argSQLQry = argSQLQry.Replace(" Status,", "[Status],");
argSQLQry = argSQLQry.Replace(".Status", ".[Status]");
argSQLQry = argSQLQry.Replace("[", "(");
argSQLQry = argSQLQry.Replace("]", ")");
return argSQLQry;
}
public PropertyCollection ConnectionString
{
get;
set;
}
/// <summary>
/// Get DataSet
/// </summary>
/// <param name="argSQLQry"></param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string argSQLQry)
{
try
{
using (DataSet dataset = new DataSet())
{
argSQLQry = ModifiedSQLQuery(argSQLQry);
SqlDataAdapter adapter = new SqlDataAdapter(argSQLQry, SQLConnectionString);
adapter.Fill(dataset);
return dataset;
}
}
catch (Exception)
{
return null;
}
}
/// <summary>
/// Get DataTable
/// </summary>
/// <param name="argSQLQry"></param>
/// <returns>DataTable</returns>
public DataTable GetDataTable(string argSQLQry)
{
try
{
using (DataTable datatable = new DataTable())
{
argSQLQry = ModifiedSQLQuery(argSQLQry);
SqlDataAdapter adapter = new SqlDataAdapter(argSQLQry, SQLConnectionString);
adapter.Fill(datatable);
return datatable;
}
}
catch (Exception)
{
return null;
}
}
/// <summary>
/// Execute SQL Command
/// </summary>
/// <param name="argSQLQry"></param>
/// <param name="executionCommandType"></param>
/// <returns>Object</returns>
public object ExecuteSQLCommand(string argSQLQry, ExecutionType executionCommandType)
{
try
{
using (SqlConnection ConnectionString = new SqlConnection(SQLConnectionString))
{
ConnectionString.Open();
using (SqlCommand command = new SqlCommand(argSQLQry, ConnectionString))
{
object obj = DBNull.Value;
if (executionCommandType == ExecutionType.ReturnNothing)
obj = command.ExecuteNonQuery() as object;
else
obj = command.ExecuteScalar() as object;
return obj;
}
}
}
catch (Exception)
{
return null;
}
}
public object ExecuteSQLCommand(string argSQLQry, List<SqlParameter> sqlParamCollection, ExecutionType executionCommandType)
{
try
{
using (SqlConnection ConnectionString = new SqlConnection(SQLConnectionString))
{
ConnectionString.Open();
using (SqlCommand command = new SqlCommand(argSQLQry, ConnectionString))
{
command.CommandType = CommandType.StoredProcedure;
foreach (SqlParameter param in sqlParamCollection)
{
command.Parameters.Add(param);
}
object obj = DBNull.Value;
if (executionCommandType == ExecutionType.ReturnNothing)
obj = command.ExecuteNonQuery() as object;
else
obj = command.ExecuteScalar() as object;
return obj;
}
}
}
catch (Exception)
{
return null;
}
}
}
public class CommandObj
{
string ParameterName { get; set; }
SqlDbType ParameterType { get; set; }
string Parameter { get; set; }
}
}
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
namespace DataAccess
{
public class SQLDAL
{
string SQLConnectionString;
public SQLDAL()
{
SQLConnectionString = string.Empty;
}
public SQLDAL(string SQLConnectionString)
{
this.SQLConnectionString = SQLConnectionString;
}
public enum ExecutionType
{
ReturnNothing = 1,
ReturnScalarValue = 2
}
private string ModifiedSQLQuery(string argSQLQry)
{
argSQLQry = argSQLQry.Replace(" Function ", "[Function]");
argSQLQry = argSQLQry.Replace(" Function,", "[Function],");
argSQLQry = argSQLQry.Replace(".Function", ".[Function]");
argSQLQry = argSQLQry.Replace(" Status ", "[Status]");
argSQLQry = argSQLQry.Replace(" Status,", "[Status],");
argSQLQry = argSQLQry.Replace(".Status", ".[Status]");
argSQLQry = argSQLQry.Replace("[", "(");
argSQLQry = argSQLQry.Replace("]", ")");
return argSQLQry;
}
public PropertyCollection ConnectionString
{
get;
set;
}
/// <summary>
/// Get DataSet
/// </summary>
/// <param name="argSQLQry"></param>
/// <returns>DataSet</returns>
public DataSet GetDataSet(string argSQLQry)
{
try
{
using (DataSet dataset = new DataSet())
{
argSQLQry = ModifiedSQLQuery(argSQLQry);
SqlDataAdapter adapter = new SqlDataAdapter(argSQLQry, SQLConnectionString);
adapter.Fill(dataset);
return dataset;
}
}
catch (Exception)
{
return null;
}
}
/// <summary>
/// Get DataTable
/// </summary>
/// <param name="argSQLQry"></param>
/// <returns>DataTable</returns>
public DataTable GetDataTable(string argSQLQry)
{
try
{
using (DataTable datatable = new DataTable())
{
argSQLQry = ModifiedSQLQuery(argSQLQry);
SqlDataAdapter adapter = new SqlDataAdapter(argSQLQry, SQLConnectionString);
adapter.Fill(datatable);
return datatable;
}
}
catch (Exception)
{
return null;
}
}
/// <summary>
/// Execute SQL Command
/// </summary>
/// <param name="argSQLQry"></param>
/// <param name="executionCommandType"></param>
/// <returns>Object</returns>
public object ExecuteSQLCommand(string argSQLQry, ExecutionType executionCommandType)
{
try
{
using (SqlConnection ConnectionString = new SqlConnection(SQLConnectionString))
{
ConnectionString.Open();
using (SqlCommand command = new SqlCommand(argSQLQry, ConnectionString))
{
object obj = DBNull.Value;
if (executionCommandType == ExecutionType.ReturnNothing)
obj = command.ExecuteNonQuery() as object;
else
obj = command.ExecuteScalar() as object;
return obj;
}
}
}
catch (Exception)
{
return null;
}
}
public object ExecuteSQLCommand(string argSQLQry, List<SqlParameter> sqlParamCollection, ExecutionType executionCommandType)
{
try
{
using (SqlConnection ConnectionString = new SqlConnection(SQLConnectionString))
{
ConnectionString.Open();
using (SqlCommand command = new SqlCommand(argSQLQry, ConnectionString))
{
command.CommandType = CommandType.StoredProcedure;
foreach (SqlParameter param in sqlParamCollection)
{
command.Parameters.Add(param);
}
object obj = DBNull.Value;
if (executionCommandType == ExecutionType.ReturnNothing)
obj = command.ExecuteNonQuery() as object;
else
obj = command.ExecuteScalar() as object;
return obj;
}
}
}
catch (Exception)
{
return null;
}
}
}
public class CommandObj
{
string ParameterName { get; set; }
SqlDbType ParameterType { get; set; }
string Parameter { get; set; }
}
}