Add exceptino handling

This commit is contained in:
ShabOl 2023-11-25 23:59:45 +04:00
parent 469dc33087
commit 1db5725314
2 changed files with 34 additions and 20 deletions

View File

@ -1,4 +1,5 @@
using AirBomber.Generics;
using AirBomber.Exceptions;
using AirBomber.Generics;
using AirBomber.Rendering;
namespace AirBomber
@ -71,15 +72,22 @@ namespace AirBomber
return;
int Pos = Convert.ToInt32(NumberMaskedTextBox.Text);
if (obj - Pos == true)
try
{
MessageBox.Show("Объект удален");
CollectionPictureBox.Image = obj.ShowEntities();
if (obj - Pos == true)
{
MessageBox.Show("Объект удален");
CollectionPictureBox.Image = obj.ShowEntities();
}
else
{
MessageBox.Show("Не удалось удалить объект");
}
}
else
catch (EntityNotFoundException ex)
{
MessageBox.Show("Не удалось удалить объект");
}
MessageBox.Show(ex.Message);
}
}
public void ButtonRefreshCollection_Click(object sender, EventArgs e)
@ -132,10 +140,15 @@ namespace AirBomber
{
if (SaveFileDialog.ShowDialog() == DialogResult.OK)
{
if (_storage.SaveData(SaveFileDialog.FileName))
try
{
_storage.SaveData(SaveFileDialog.FileName);
MessageBox.Show("Сохранение прошло успешно", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
MessageBox.Show("Не сохранилось", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (Exception ex)
{
MessageBox.Show($"Не сохранилось: {ex.Message}", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
@ -143,10 +156,15 @@ namespace AirBomber
{
if (OpenFileDialog.ShowDialog() == DialogResult.OK)
{
if (_storage.LoadData(OpenFileDialog.FileName))
try
{
_storage.LoadData(OpenFileDialog.FileName);
MessageBox.Show("Загрузка прошла успешно", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
MessageBox.Show("Не загрузилось", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (Exception ex)
{
MessageBox.Show($"Не загрузилось: {ex.Message}", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
ReloadObjects();

View File

@ -55,10 +55,10 @@ namespace AirBomber.Generics
}
}
public bool SaveData(string FileName)
public void SaveData(string FileName)
{
if (_entityStorages.Count == 0)
throw new Exception("Невалиданя операция, нет данных для сохранения");
throw new Exception("Невалидная операция: нет данных для сохранения");
using (StreamWriter writer = new StreamWriter(FileName, false))
{
@ -74,11 +74,9 @@ namespace AirBomber.Generics
writer.WriteLine($"{Record.Key}{_keyValueDelimiter}{Records}");
}
}
return true;
}
public bool LoadData(string FileName)
public void LoadData(string FileName)
{
if (!File.Exists(FileName))
throw new Exception("Файл не найден");
@ -115,8 +113,6 @@ namespace AirBomber.Generics
_entityStorages.Add(Record[0], Collection);
}
}
return true;
}
}
}