KI-Kunst-Kirsten-Kloeckner/DataAccess/DbAccess/ISqlDataAccess.cs

26 lines
1.5 KiB
C#

namespace DataAccess.DbAccess;
/// <summary>
/// Bietet lesenden und schreibenden Zugriff auf eine Datenbank.
/// </summary>
public interface ISqlDataAccess
{
/// <summary>
/// Führt die angegebene Stored Procedure aus. Diese Prozedur nimmt Parameter des Typs <see cref="TParameter"/> engegen und gibt ein Enumerable des Typs <see cref="TResult"/> zurück.
/// </summary>
/// <typeparam name="TResult">Der Typ der Parameter</typeparam>
/// <typeparam name="TParameter">Der Typ der Rückgabewerte</typeparam>
/// <param name="storedProcedure">Der Name der Prozedur</param>
/// <param name="parameters">Die Parameter für die Prozedur.</param>
/// <param name="connectionId">Die optionale Id des zu verwendenen Connection Strings.</param>
Task<IEnumerable<TResult>> LoadData<TResult, TParameter>(string storedProcedure, TParameter parameters, string connectionId = "Default");
/// <summary>
/// Führt die angegebene Stored Procedure aus. Diese Prozedur nimmt Parameter des Typs <see cref="TParameter"/> engegen und gibt nichts zurück.
/// </summary>
/// <typeparam name="TParameter">Der Typ der Parameter</typeparam>
/// <param name="storedProcedure">Der Name der Prozedur</param>
/// <param name="parameters">Die Parameter für die Prozedur.</param>
/// <param name="connectionId">Die optionale Id des zu verwendenen Connection Strings.</param>
Task SaveData<TParameter>(string storedProcedure, TParameter parameters, string connectionId = "Default");
}