using System;
using System.Configuration;
using FirebirdSql.Data.Firebird;
using System.Data;
using System.Data.SqlClient;
namespace ASPNET.StarterKit.Reports.DataAccessLayer
{
public sealed class DatabaseHelper
{
public static int ExecuteNonQuery(string connectionString, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteNonQuery(connectionString, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteNonQuery(connectionString, commandType, commandText, commandParameters as SqlParameter[]);
}
public static int ExecuteNonQuery(string connectionString, string spName, params object[] parameterValues)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteNonQuery(connectionString, spName, parameterValues);
else
return SqlHelper.ExecuteNonQuery(connectionString, spName, parameterValues);
}
public static int ExecuteNonQuery(IDbConnection connection, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteNonQuery(connection as FbConnection, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteNonQuery(connection as SqlConnection, commandType, commandText, commandParameters as SqlParameter[]);
}
public static DataSet ExecuteDataset(string connectionString, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteDataset(connectionString, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteDataset(connectionString, commandType, commandText, commandParameters as SqlParameter[]);
}
public static DataSet ExecuteDataset(string connectionString, string spName, params object[] parameterValues)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteDataset(connectionString, spName, parameterValues);
else
return SqlHelper.ExecuteDataset(connectionString, spName, parameterValues);
}
public static DataSet ExecuteDataset(IDbConnection connection, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteDataset(connection as FbConnection, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteDataset(connection as SqlConnection, commandType, commandText, commandParameters as SqlParameter[]);
}
public static object ExecuteScalar(string connectionString, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteScalar(connectionString, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteScalar(connectionString, commandType, commandText, commandParameters as SqlParameter[]);
}
public static object ExecuteScalar(string connectionString, string spName, params object[] parameterValues)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteScalar(connectionString, spName, parameterValues);
else
return SqlHelper.ExecuteScalar(connectionString, spName, parameterValues);
}
public static object ExecuteScalar(IDbConnection connection, CommandType commandType, string commandText, params IDataParameter[] commandParameters)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteScalar(connection as FbConnection, commandType, commandText, commandParameters as FbParameter[]);
else
return SqlHelper.ExecuteScalar(connection as SqlConnection, commandType, commandText, commandParameters as SqlParameter[]);
}
public static object ExecuteScalar(IDbTransaction transaction, string spName, params object[] parameterValues)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
return FbHelper.ExecuteScalar(transaction as FbTransaction, spName, parameterValues);
else
return SqlHelper.ExecuteScalar(transaction as SqlTransaction, spName, parameterValues);
}
public static IDbConnection GetConnection(string connectionString)
{
if (ConfigurationSettings.AppSettings[Global.CfgKeyProvider]=="FireBird")
{
FbConnection ret=new FbConnection(connectionString);
ret.Open();
return ret;
}
else
{
SqlConnection ret=new SqlConnection(connectionString);
ret.Open();
return ret;
}
}
}
}