diff --git a/AirBomber/AirBomber.csproj b/AirBomber/AirBomber.csproj
index 24f6cce..a0be12e 100644
--- a/AirBomber/AirBomber.csproj
+++ b/AirBomber/AirBomber.csproj
@@ -27,4 +27,15 @@
+
+
+
+
+
+
+
+ Always
+
+
+
\ No newline at end of file
diff --git a/AirBomber/FormEntityCollection.cs b/AirBomber/FormEntityCollection.cs
index 8fbc58a..4b94e50 100644
--- a/AirBomber/FormEntityCollection.cs
+++ b/AirBomber/FormEntityCollection.cs
@@ -1,6 +1,7 @@
using AirBomber.Exceptions;
using AirBomber.Generics;
using AirBomber.Rendering;
+using Microsoft.Extensions.Logging;
namespace AirBomber
{
@@ -8,11 +9,14 @@ namespace AirBomber
{
private readonly EntitiesGenericStorage _storage;
- public FormEntityCollection()
+ private readonly ILogger _logger;
+
+ public FormEntityCollection(ILogger Logger)
{
InitializeComponent();
_storage = new EntitiesGenericStorage(CollectionPictureBox.Width, CollectionPictureBox.Height);
+ _logger = Logger;
}
private void ReloadObjects()
@@ -112,6 +116,8 @@ namespace AirBomber
_storage.AddSet(SetNameTextBox.Text);
ReloadObjects();
+
+ _logger.LogInformation($"Добавлен набор: {SetNameTextBox.Text}");
}
private void ButtonRemoveSet_Click(object sender, EventArgs e)
@@ -119,15 +125,19 @@ namespace AirBomber
if (StorageListBox.SelectedIndex == -1)
return;
+ string SetName = StorageListBox.SelectedItem.ToString() ?? string.Empty;
+
if (MessageBox.Show(
- $"Удалить объект{StorageListBox.SelectedItem}?",
+ $"Удалить объект{SetName}?",
"Удаление",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question
) == DialogResult.Yes)
{
- _storage.RemoveSet(StorageListBox.SelectedItem.ToString() ?? string.Empty);
+ _storage.RemoveSet(SetName);
ReloadObjects();
+
+ _logger.LogInformation($"Удален набор: {SetName}");
}
}
diff --git a/AirBomber/Program.cs b/AirBomber/Program.cs
index 7c6cc77..3c8cda9 100644
--- a/AirBomber/Program.cs
+++ b/AirBomber/Program.cs
@@ -1,3 +1,8 @@
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.Extensions.Logging;
+using NLog.Extensions.Logging;
+using System;
+
namespace AirBomber
{
internal static class Program
@@ -6,7 +11,25 @@ namespace AirBomber
static void Main()
{
ApplicationConfiguration.Initialize();
- Application.Run(new FormEntityCollection());
+
+ var services = new ServiceCollection();
+ ConfigureServices(services);
+
+ using (ServiceProvider ServiceProvider = services.BuildServiceProvider())
+ {
+ Application.Run(ServiceProvider.GetRequiredService());
+ }
+ }
+
+ private static void ConfigureServices(IServiceCollection services)
+ {
+ services.AddSingleton().AddLogging(
+ option =>
+ {
+ option.SetMinimumLevel(LogLevel.Information);
+ option.AddNLog("nlog.config");
+ }
+ );
}
}
}
\ No newline at end of file
diff --git a/AirBomber/nlog.config b/AirBomber/nlog.config
new file mode 100644
index 0000000..2808234
--- /dev/null
+++ b/AirBomber/nlog.config
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file