using MedicalDatabaseContracts.Models; using Microsoft.Extensions.Logging; using Npgsql; using System.Data; namespace MedicalPostgresqlDatabase.Storages { public class DiagnoseStorage : AbstractPostgresqlStorage { public DiagnoseStorage(ILogger logger) : base(logger, "diagnoses", "diagnose_id", "diagnoses_id_seq") { } protected override Diagnose CreateEntityFromReader(NpgsqlDataReader reader) { return new Diagnose { Id = Convert.ToInt32(reader.GetValue(PRIMARY_KEY_COLUMN_NAME)), Name = Convert.ToString(reader.GetValue("name")), }; } protected override Dictionary GetEntityAttributesDictionary(Diagnose item) { var dict = new Dictionary { { PRIMARY_KEY_COLUMN_NAME, item.Id.ToString() }, { "name", item.Name }, }; return dict; } } }