38 lines
1.1 KiB
C#
38 lines
1.1 KiB
C#
using Dapper;
|
|
using Microsoft.Extensions.Configuration;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
|
|
namespace DataAccess.DbAccess;
|
|
|
|
public class SqlDataAccess : ISqlDataAccess
|
|
{
|
|
private readonly IConfiguration _config;
|
|
|
|
public SqlDataAccess(IConfiguration config)
|
|
{
|
|
_config = config;
|
|
}
|
|
|
|
public async Task<IEnumerable<TData>> LoadData<TData, TParam>(
|
|
string storedProcedureName,
|
|
TParam parameters,
|
|
string connectionId = "Default")
|
|
{
|
|
using IDbConnection connection = new SqlConnection(_config.GetConnectionString(connectionId));
|
|
|
|
return await connection.QueryAsync<TData>(storedProcedureName, parameters,
|
|
commandType: CommandType.StoredProcedure);
|
|
}
|
|
|
|
public async Task SaveData<TParam>(
|
|
string storedProcedureName,
|
|
TParam parameters,
|
|
string connectionId = "Default")
|
|
{
|
|
using IDbConnection connection = new SqlConnection(_config.GetConnectionString(connectionId));
|
|
|
|
await connection.ExecuteAsync(storedProcedureName, parameters,
|
|
commandType: CommandType.StoredProcedure);
|
|
}
|
|
} |