Дополнения

This commit is contained in:
malimova 2023-12-10 22:48:28 +04:00
parent 8021e8ec78
commit dfaaa3c746
4 changed files with 56 additions and 17 deletions

View File

@ -8,6 +8,12 @@
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup> </PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
<PackageReference Include="NLog.Extensions.Logging" Version="5.3.7" />
<PackageReference Include="Serilog" Version="3.1.1" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Update="Properties\Resources.Designer.cs"> <Compile Update="Properties\Resources.Designer.cs">
<DesignTime>True</DesignTime> <DesignTime>True</DesignTime>

View File

@ -10,7 +10,9 @@ using System.Windows.Forms;
using Microsoft.VisualBasic.Logging; using Microsoft.VisualBasic.Logging;
using AirBomber.Exceptions; using AirBomber.Exceptions;
using Serilog; using Serilog;
using Log = Serilog.Log; using _logger = Serilog.Log;
using System.Xml.Linq;
using System.Linq.Expressions;
namespace AirBomber namespace AirBomber
{ {
@ -82,11 +84,13 @@ namespace AirBomber
if (obj + plane > -1) if (obj + plane > -1)
{ {
MessageBox.Show("Объект добавлен"); MessageBox.Show("Объект добавлен");
_logger.Information("Объект добавлен");
pictureBoxCollection.Image = obj.ShowPlanes(); pictureBoxCollection.Image = obj.ShowPlanes();
} }
else else
{ {
MessageBox.Show("Не удалось добавить объект"); MessageBox.Show("Не удалось добавить объект");
_logger.Warning("Не удалось добавить объект");
} }
} }
/// <summary> /// <summary>
@ -110,14 +114,23 @@ namespace AirBomber
return; return;
} }
int pos = Convert.ToInt32(maskedTextBoxNumber.Text); int pos = Convert.ToInt32(maskedTextBoxNumber.Text);
if (obj - pos != null) try
{ {
MessageBox.Show("Объект удален"); if (obj - pos != null)
pictureBoxCollection.Image = obj.ShowPlanes(); {
MessageBox.Show("Объект удален");
_logger.Information("Объект удален");
pictureBoxCollection.Image = obj.ShowPlanes();
}
else
{
MessageBox.Show("Не удалось удалить объект");
_logger.Warning("Не удалось удалить объект");
}
} }
else catch (PlaneNotFoundException ex)
{ {
MessageBox.Show("Не удалось удалить объект"); MessageBox.Show(ex.Message);
} }
} }
/// <summary> /// <summary>
@ -147,23 +160,26 @@ namespace AirBomber
{ {
if (string.IsNullOrEmpty(textBoxStorageName.Text)) if (string.IsNullOrEmpty(textBoxStorageName.Text))
{ {
MessageBox.Show("Не все данные заполнены", "Ошибка", MessageBox.Show("Не все данные заполнены", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
MessageBoxButtons.OK, MessageBoxIcon.Error); _logger.Warning("Не все данные заполнены");
return; return;
} }
_storage.AddSet(textBoxStorageName.Text); _storage.AddSet(textBoxStorageName.Text);
ReloadObjects(); ReloadObjects();
_logger.Information($"Добавлен набор: {textBoxStorageName.Text}");
} }
private void buttonDelObject_Click(object sender, EventArgs e) private void buttonDelObject_Click(object sender, EventArgs e)
{ {
string Name = listBoxStorages.SelectedItem.ToString() ?? string.Empty;
if (listBoxStorages.SelectedIndex == -1) if (listBoxStorages.SelectedIndex == -1)
{ {
return; return;
} }
if (MessageBox.Show($"Удалить объект{listBoxStorages.SelectedItem}?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) if (MessageBox.Show($"Удалить набор {Name}?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{ {
_storage.DelSet(listBoxStorages.SelectedItem.ToString() ?? string.Empty); _storage.DelSet(Name);
ReloadObjects(); ReloadObjects();
_logger.Information($"Удален набор: {Name}");
} }
} }
/// <summary> /// <summary>
@ -175,13 +191,15 @@ namespace AirBomber
{ {
if (saveFileDialog.ShowDialog() == DialogResult.OK) if (saveFileDialog.ShowDialog() == DialogResult.OK)
{ {
if (_storage.SaveData(saveFileDialog.FileName)) try
{ {
MessageBox.Show("Сохранение прошло успешно", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information); MessageBox.Show("Сохранение прошло успешно", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);
_logger.Information("Сохранение прошло успешно");
} }
else catch (Exception ex)
{ {
MessageBox.Show("Не сохранилось", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error); MessageBox.Show("Не сохранилось", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
_logger.Warning($"Не сохранилось: {ex.Message}");
} }
} }
} }
@ -195,15 +213,17 @@ namespace AirBomber
// TODO продумать логику DONE // TODO продумать логику DONE
if (openFileDialog.ShowDialog() == DialogResult.OK) if (openFileDialog.ShowDialog() == DialogResult.OK)
{ {
if (_storage.LoadData(openFileDialog.FileName)) try
{ {
_storage.LoadData(openFileDialog.FileName);
MessageBox.Show("Загрузка прошла успешно!", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information); MessageBox.Show("Загрузка прошла успешно!", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);
_logger.Information("Загрузка прошла успешно");
ReloadObjects(); ReloadObjects();
} }
else catch(Exception ex)
{ {
MessageBox.Show("Не загрузилось!", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error); MessageBox.Show("Не загрузилось", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Error);
_logger.Warning($"Не загрузилось: {ex.Message}");
} }
} }
} }

View File

@ -1,3 +1,9 @@
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using NLog.Extensions.Logging;
using Serilog;
namespace AirBomber namespace AirBomber
{ {
internal static class Program internal static class Program
@ -11,7 +17,13 @@ namespace AirBomber
// To customize application configuration such as set high DPI settings or default font, // To customize application configuration such as set high DPI settings or default font,
// see https://aka.ms/applicationconfiguration. // see https://aka.ms/applicationconfiguration.
ApplicationConfiguration.Initialize(); ApplicationConfiguration.Initialize();
Application.Run(new FormPlaneCollection()); var services = new ServiceCollection();
ConfigureServices(services);
using (ServiceProvider serviceProvider = services.BuildServiceProvider())
{
Application.Run(serviceProvider.GetRequiredService<FormPlaneCollection>());
}
//Application.Run(new FormPlaneCollection());
} }
} }
} }

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using AirBomber.Exceptions;
namespace AirBomber namespace AirBomber
{ {