diff --git a/DataAccess/Data/BildInfoData.cs b/DataAccess/Data/BildInfoData.cs index 86245a7..e2def08 100644 --- a/DataAccess/Data/BildInfoData.cs +++ b/DataAccess/Data/BildInfoData.cs @@ -1,14 +1,11 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Runtime.CompilerServices; -using System.Text; -using System.Threading.Tasks; -using DataAccess.DbAccess; +using DataAccess.DbAccess; using DataAccess.Models; namespace DataAccess.Data; +/// +/// Ermöglicht den Zugriff auf die BildInfo Datenbank. +/// public class BildInfoData { private readonly ISqlDataAccess _db; @@ -18,18 +15,34 @@ public class BildInfoData _db = db; } + /// + /// Fügt die gegebene BildInfo zur Datenbank hinzu und aktualisiert das -Feld mit dem entsprechenden Wert. + /// + /// Die BildInfo, die zur Datenbank hinzugefügt werden soll. public async Task AddBildInfoAsync(BildInfoModel bildInfo) { var id = await _db.LoadData("dbo.spBildInfo_Insert", bildInfo); bildInfo.Id = id.Single(); } - public async Task UpdateBildInfoDateinameAsync(BildInfoModel bildInfo) + /// + /// Aktualisiert das Dateiname-Feld der übergebenen BildInfo in der Datenbank. + /// + /// Die BildInfo deren Dateiname aktualisiert werden soll. + public Task UpdateBildInfoDateinameAsync(BildInfoModel bildInfo) { - await _db.SaveData("dbo.spBildInfo_UpdateFileName", + return _db.SaveData("dbo.spBildInfo_UpdateFileName", new { Id = bildInfo.Id, Dateiname = bildInfo.Dateiname, }); } + + /// + /// Gibt alle Bild Infos der Datenbank zurück. + /// + public Task> GetAllBildInfosAsync() + { + return _db.LoadData("dbo.spBildInfo_GetAll", new { }); + } } diff --git a/DataAccess/Data/WunschInfoData.cs b/DataAccess/Data/WunschInfoData.cs index c1d467e..26e0854 100644 --- a/DataAccess/Data/WunschInfoData.cs +++ b/DataAccess/Data/WunschInfoData.cs @@ -22,4 +22,15 @@ public class WunschInfoData var id = await _db.LoadData("dbo.spWunschInfo_Insert", wunschInfo); wunschInfo.Id = id.Single(); } + + /// + /// Gibt die WunschInfo mit der gegebenen Id zurück. + /// + /// Die Id der zu ladenen WunschInfo + /// Die WunschInfo mit der gegebenen Id + public async Task GetWunschInfoAsync(int wunschId) + { + var wunschInfo = await _db.LoadData("dbo.spWunschInfo_Get", new { Id = wunschId }); + return wunschInfo.Single(); + } } diff --git a/DataAccess/DbAccess/ISqlDataAccess.cs b/DataAccess/DbAccess/ISqlDataAccess.cs index ed3232e..c1a2103 100644 --- a/DataAccess/DbAccess/ISqlDataAccess.cs +++ b/DataAccess/DbAccess/ISqlDataAccess.cs @@ -1,7 +1,26 @@ namespace DataAccess.DbAccess; +/// +/// Bietet lesenden und schreibenden Zugriff auf eine Datenbank. +/// public interface ISqlDataAccess { - Task> LoadData(string storedProcedure, U parameters, string connectionId = "Default"); - Task SaveData(string storedProcedure, T parameters, string connectionId = "Default"); + /// + /// Führt die angegebene Stored Procedure aus. Diese Prozedur nimmt Parameter des Typs engegen und gibt ein Enumerable des Typs zurück. + /// + /// Der Typ der Parameter + /// Der Typ der Rückgabewerte + /// Der Name der Prozedur + /// Die Parameter für die Prozedur. + /// Die optionale Id des zu verwendenen Connection Strings. + Task> LoadData(string storedProcedure, TParameter parameters, string connectionId = "Default"); + + /// + /// Führt die angegebene Stored Procedure aus. Diese Prozedur nimmt Parameter des Typs engegen und gibt nichts zurück. + /// + /// Der Typ der Parameter + /// Der Name der Prozedur + /// Die Parameter für die Prozedur. + /// Die optionale Id des zu verwendenen Connection Strings. + Task SaveData(string storedProcedure, TParameter parameters, string connectionId = "Default"); } \ No newline at end of file diff --git a/DataAccess/DbAccess/SqlDataAccess.cs b/DataAccess/DbAccess/SqlDataAccess.cs index f5edcf0..1a331aa 100644 --- a/DataAccess/DbAccess/SqlDataAccess.cs +++ b/DataAccess/DbAccess/SqlDataAccess.cs @@ -5,6 +5,9 @@ using Dapper; namespace DataAccess.DbAccess; +/// +/// Bietet lesenden und schreibenden Zugriff auf eine Datenbank. +/// public class SqlDataAccess : ISqlDataAccess { private readonly IConfiguration _config; @@ -14,14 +17,14 @@ public class SqlDataAccess : ISqlDataAccess _config = config; } - public async Task> LoadData(string storedProcedure, U parameters, string connectionId = "Default") + public async Task> LoadData(string storedProcedure, TParameter parameters, string connectionId = "Default") { using IDbConnection connection = new SqlConnection(_config.GetConnectionString(connectionId)); - return await connection.QueryAsync(storedProcedure, parameters, commandType: CommandType.StoredProcedure); + return await connection.QueryAsync(storedProcedure, parameters, commandType: CommandType.StoredProcedure); } - public async Task SaveData(string storedProcedure, T parameters, string connectionId = "Default") + public async Task SaveData(string storedProcedure, TParameter parameters, string connectionId = "Default") { using IDbConnection connection = new SqlConnection(_config.GetConnectionString(connectionId)); diff --git a/KIKunstKirstenKlöckner/Pages/Gallery.razor b/KIKunstKirstenKlöckner/Pages/Gallery.razor index 94554da..9196388 100644 --- a/KIKunstKirstenKlöckner/Pages/Gallery.razor +++ b/KIKunstKirstenKlöckner/Pages/Gallery.razor @@ -1,5 +1,11 @@ @page "/gallery" +@using DataAccess.Data +@using DataAccess.Models + +@inject BildInfoData BildInfoData; +@inject WunschInfoData WunschInfoData; +
- -