using MedicalDatabaseContracts; using MedicalDatabaseContracts.Models; using Microsoft.Extensions.Logging; namespace MedicalView { public partial class FormDiagnoses : Form { private ILogger _logger; private IStorage _diagnosesStorage; public FormDiagnoses(ILogger logger, IStorage diagnosesStorage) { InitializeComponent(); _logger = logger; _diagnosesStorage = diagnosesStorage; } private void FormDiagnoses_Load(object sender, EventArgs e) { LoadData(); } private void RefreshToolStripMenuItem_Click(object sender, EventArgs e) { LoadData(); } private void LoadData() { try { var diagnoses = _diagnosesStorage.GetAll(); dataGridView.DataSource = diagnoses; _logger.LogInformation("Список диагнозов загружен успешно"); } catch (Exception ex) { string errorMessage = "Ошибка загрузки списка диагнозов"; _logger.LogError(string.Join(", ", errorMessage, $"\"{ex.Message}\"")); MessageBox.Show(string.Join("\n\n", errorMessage, $"{ex.Message}"), "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }