diff --git a/Directory.Packages.props b/Directory.Packages.props
new file mode 100644
index 0000000..21464c0
--- /dev/null
+++ b/Directory.Packages.props
@@ -0,0 +1,69 @@
+
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/ScadaLink.CLI/ScadaLink.CLI.csproj b/src/ScadaLink.CLI/ScadaLink.CLI.csproj
index d2ae978..afb931c 100644
--- a/src/ScadaLink.CLI/ScadaLink.CLI.csproj
+++ b/src/ScadaLink.CLI/ScadaLink.CLI.csproj
@@ -11,8 +11,8 @@
-
-
+
+
diff --git a/src/ScadaLink.CentralUI/ScadaLink.CentralUI.csproj b/src/ScadaLink.CentralUI/ScadaLink.CentralUI.csproj
index 87bda52..3a829fb 100644
--- a/src/ScadaLink.CentralUI/ScadaLink.CentralUI.csproj
+++ b/src/ScadaLink.CentralUI/ScadaLink.CentralUI.csproj
@@ -16,8 +16,8 @@
-
-
+
+
diff --git a/src/ScadaLink.ClusterInfrastructure/ScadaLink.ClusterInfrastructure.csproj b/src/ScadaLink.ClusterInfrastructure/ScadaLink.ClusterInfrastructure.csproj
index 55ee4be..132c2a9 100644
--- a/src/ScadaLink.ClusterInfrastructure/ScadaLink.ClusterInfrastructure.csproj
+++ b/src/ScadaLink.ClusterInfrastructure/ScadaLink.ClusterInfrastructure.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/src/ScadaLink.Communication/ScadaLink.Communication.csproj b/src/ScadaLink.Communication/ScadaLink.Communication.csproj
index 23aa1b3..f9be739 100644
--- a/src/ScadaLink.Communication/ScadaLink.Communication.csproj
+++ b/src/ScadaLink.Communication/ScadaLink.Communication.csproj
@@ -16,13 +16,13 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/src/ScadaLink.ConfigurationDatabase/ScadaLink.ConfigurationDatabase.csproj b/src/ScadaLink.ConfigurationDatabase/ScadaLink.ConfigurationDatabase.csproj
index f462972..1a9d67e 100644
--- a/src/ScadaLink.ConfigurationDatabase/ScadaLink.ConfigurationDatabase.csproj
+++ b/src/ScadaLink.ConfigurationDatabase/ScadaLink.ConfigurationDatabase.csproj
@@ -8,16 +8,16 @@
-
-
-
+
+
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all
-
-
-
-
+
+
+
+
diff --git a/src/ScadaLink.DataConnectionLayer/ScadaLink.DataConnectionLayer.csproj b/src/ScadaLink.DataConnectionLayer/ScadaLink.DataConnectionLayer.csproj
index 396db31..1a06254 100644
--- a/src/ScadaLink.DataConnectionLayer/ScadaLink.DataConnectionLayer.csproj
+++ b/src/ScadaLink.DataConnectionLayer/ScadaLink.DataConnectionLayer.csproj
@@ -8,14 +8,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/src/ScadaLink.DeploymentManager/ScadaLink.DeploymentManager.csproj b/src/ScadaLink.DeploymentManager/ScadaLink.DeploymentManager.csproj
index fc3191b..4d0eec3 100644
--- a/src/ScadaLink.DeploymentManager/ScadaLink.DeploymentManager.csproj
+++ b/src/ScadaLink.DeploymentManager/ScadaLink.DeploymentManager.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/src/ScadaLink.ExternalSystemGateway/ScadaLink.ExternalSystemGateway.csproj b/src/ScadaLink.ExternalSystemGateway/ScadaLink.ExternalSystemGateway.csproj
index 41838f8..1403f71 100644
--- a/src/ScadaLink.ExternalSystemGateway/ScadaLink.ExternalSystemGateway.csproj
+++ b/src/ScadaLink.ExternalSystemGateway/ScadaLink.ExternalSystemGateway.csproj
@@ -8,11 +8,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/src/ScadaLink.HealthMonitoring/ScadaLink.HealthMonitoring.csproj b/src/ScadaLink.HealthMonitoring/ScadaLink.HealthMonitoring.csproj
index 814bbbd..5c35664 100644
--- a/src/ScadaLink.HealthMonitoring/ScadaLink.HealthMonitoring.csproj
+++ b/src/ScadaLink.HealthMonitoring/ScadaLink.HealthMonitoring.csproj
@@ -8,10 +8,10 @@
-
-
-
-
+
+
+
+
diff --git a/src/ScadaLink.Host/ScadaLink.Host.csproj b/src/ScadaLink.Host/ScadaLink.Host.csproj
index 7bcb4d0..8dcb401 100644
--- a/src/ScadaLink.Host/ScadaLink.Host.csproj
+++ b/src/ScadaLink.Host/ScadaLink.Host.csproj
@@ -8,23 +8,23 @@
-
-
-
-
-
-
+
+
+
+
+
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all
-
-
-
-
-
+
+
+
+
+
-
+
diff --git a/src/ScadaLink.InboundAPI/ScadaLink.InboundAPI.csproj b/src/ScadaLink.InboundAPI/ScadaLink.InboundAPI.csproj
index c75e249..94cf9ec 100644
--- a/src/ScadaLink.InboundAPI/ScadaLink.InboundAPI.csproj
+++ b/src/ScadaLink.InboundAPI/ScadaLink.InboundAPI.csproj
@@ -21,7 +21,7 @@
-
+
diff --git a/src/ScadaLink.ManagementService/ScadaLink.ManagementService.csproj b/src/ScadaLink.ManagementService/ScadaLink.ManagementService.csproj
index bc713b5..64cebd4 100644
--- a/src/ScadaLink.ManagementService/ScadaLink.ManagementService.csproj
+++ b/src/ScadaLink.ManagementService/ScadaLink.ManagementService.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/src/ScadaLink.NotificationService/ScadaLink.NotificationService.csproj b/src/ScadaLink.NotificationService/ScadaLink.NotificationService.csproj
index a3ed893..43b11cf 100644
--- a/src/ScadaLink.NotificationService/ScadaLink.NotificationService.csproj
+++ b/src/ScadaLink.NotificationService/ScadaLink.NotificationService.csproj
@@ -8,11 +8,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/src/ScadaLink.Security/ScadaLink.Security.csproj b/src/ScadaLink.Security/ScadaLink.Security.csproj
index 32aec4f..c27ca87 100644
--- a/src/ScadaLink.Security/ScadaLink.Security.csproj
+++ b/src/ScadaLink.Security/ScadaLink.Security.csproj
@@ -8,12 +8,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/src/ScadaLink.SiteEventLogging/ScadaLink.SiteEventLogging.csproj b/src/ScadaLink.SiteEventLogging/ScadaLink.SiteEventLogging.csproj
index 98c3ee6..587699f 100644
--- a/src/ScadaLink.SiteEventLogging/ScadaLink.SiteEventLogging.csproj
+++ b/src/ScadaLink.SiteEventLogging/ScadaLink.SiteEventLogging.csproj
@@ -8,12 +8,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/src/ScadaLink.SiteRuntime/ScadaLink.SiteRuntime.csproj b/src/ScadaLink.SiteRuntime/ScadaLink.SiteRuntime.csproj
index f54462c..2ddecd3 100644
--- a/src/ScadaLink.SiteRuntime/ScadaLink.SiteRuntime.csproj
+++ b/src/ScadaLink.SiteRuntime/ScadaLink.SiteRuntime.csproj
@@ -8,16 +8,16 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/ScadaLink.StoreAndForward/ScadaLink.StoreAndForward.csproj b/src/ScadaLink.StoreAndForward/ScadaLink.StoreAndForward.csproj
index d37f2e3..82b3c15 100644
--- a/src/ScadaLink.StoreAndForward/ScadaLink.StoreAndForward.csproj
+++ b/src/ScadaLink.StoreAndForward/ScadaLink.StoreAndForward.csproj
@@ -8,11 +8,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/src/ScadaLink.TemplateEngine/ScadaLink.TemplateEngine.csproj b/src/ScadaLink.TemplateEngine/ScadaLink.TemplateEngine.csproj
index 718e461..8373c91 100644
--- a/src/ScadaLink.TemplateEngine/ScadaLink.TemplateEngine.csproj
+++ b/src/ScadaLink.TemplateEngine/ScadaLink.TemplateEngine.csproj
@@ -12,8 +12,8 @@
-
-
+
+
diff --git a/tests/ScadaLink.CLI.Tests/ScadaLink.CLI.Tests.csproj b/tests/ScadaLink.CLI.Tests/ScadaLink.CLI.Tests.csproj
index 8704093..1a3c75e 100644
--- a/tests/ScadaLink.CLI.Tests/ScadaLink.CLI.Tests.csproj
+++ b/tests/ScadaLink.CLI.Tests/ScadaLink.CLI.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.CentralUI.PlaywrightTests/ScadaLink.CentralUI.PlaywrightTests.csproj b/tests/ScadaLink.CentralUI.PlaywrightTests/ScadaLink.CentralUI.PlaywrightTests.csproj
index de467ec..32913fa 100644
--- a/tests/ScadaLink.CentralUI.PlaywrightTests/ScadaLink.CentralUI.PlaywrightTests.csproj
+++ b/tests/ScadaLink.CentralUI.PlaywrightTests/ScadaLink.CentralUI.PlaywrightTests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.CentralUI.Tests/ScadaLink.CentralUI.Tests.csproj b/tests/ScadaLink.CentralUI.Tests/ScadaLink.CentralUI.Tests.csproj
index fc2972d..cbab8f3 100644
--- a/tests/ScadaLink.CentralUI.Tests/ScadaLink.CentralUI.Tests.csproj
+++ b/tests/ScadaLink.CentralUI.Tests/ScadaLink.CentralUI.Tests.csproj
@@ -9,12 +9,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/tests/ScadaLink.ClusterInfrastructure.Tests/ScadaLink.ClusterInfrastructure.Tests.csproj b/tests/ScadaLink.ClusterInfrastructure.Tests/ScadaLink.ClusterInfrastructure.Tests.csproj
index c0f85df..0dfb468 100644
--- a/tests/ScadaLink.ClusterInfrastructure.Tests/ScadaLink.ClusterInfrastructure.Tests.csproj
+++ b/tests/ScadaLink.ClusterInfrastructure.Tests/ScadaLink.ClusterInfrastructure.Tests.csproj
@@ -9,10 +9,10 @@
-
-
-
-
+
+
+
+
diff --git a/tests/ScadaLink.Commons.Tests/ScadaLink.Commons.Tests.csproj b/tests/ScadaLink.Commons.Tests/ScadaLink.Commons.Tests.csproj
index 647e6f5..d7a9feb 100644
--- a/tests/ScadaLink.Commons.Tests/ScadaLink.Commons.Tests.csproj
+++ b/tests/ScadaLink.Commons.Tests/ScadaLink.Commons.Tests.csproj
@@ -9,10 +9,10 @@
-
-
-
-
+
+
+
+
diff --git a/tests/ScadaLink.Communication.Tests/ScadaLink.Communication.Tests.csproj b/tests/ScadaLink.Communication.Tests/ScadaLink.Communication.Tests.csproj
index abc59aa..68f3143 100644
--- a/tests/ScadaLink.Communication.Tests/ScadaLink.Communication.Tests.csproj
+++ b/tests/ScadaLink.Communication.Tests/ScadaLink.Communication.Tests.csproj
@@ -9,13 +9,13 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.ConfigurationDatabase.Tests/ScadaLink.ConfigurationDatabase.Tests.csproj b/tests/ScadaLink.ConfigurationDatabase.Tests/ScadaLink.ConfigurationDatabase.Tests.csproj
index e44d1c4..cbc2ae4 100644
--- a/tests/ScadaLink.ConfigurationDatabase.Tests/ScadaLink.ConfigurationDatabase.Tests.csproj
+++ b/tests/ScadaLink.ConfigurationDatabase.Tests/ScadaLink.ConfigurationDatabase.Tests.csproj
@@ -9,14 +9,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.DataConnectionLayer.Tests/ScadaLink.DataConnectionLayer.Tests.csproj b/tests/ScadaLink.DataConnectionLayer.Tests/ScadaLink.DataConnectionLayer.Tests.csproj
index 150c913..94b81a4 100644
--- a/tests/ScadaLink.DataConnectionLayer.Tests/ScadaLink.DataConnectionLayer.Tests.csproj
+++ b/tests/ScadaLink.DataConnectionLayer.Tests/ScadaLink.DataConnectionLayer.Tests.csproj
@@ -9,12 +9,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/tests/ScadaLink.DeploymentManager.Tests/ScadaLink.DeploymentManager.Tests.csproj b/tests/ScadaLink.DeploymentManager.Tests/ScadaLink.DeploymentManager.Tests.csproj
index b8aafbe..23f2b4f 100644
--- a/tests/ScadaLink.DeploymentManager.Tests/ScadaLink.DeploymentManager.Tests.csproj
+++ b/tests/ScadaLink.DeploymentManager.Tests/ScadaLink.DeploymentManager.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.ExternalSystemGateway.Tests/ScadaLink.ExternalSystemGateway.Tests.csproj b/tests/ScadaLink.ExternalSystemGateway.Tests/ScadaLink.ExternalSystemGateway.Tests.csproj
index fdd5f11..d610a02 100644
--- a/tests/ScadaLink.ExternalSystemGateway.Tests/ScadaLink.ExternalSystemGateway.Tests.csproj
+++ b/tests/ScadaLink.ExternalSystemGateway.Tests/ScadaLink.ExternalSystemGateway.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.HealthMonitoring.Tests/ScadaLink.HealthMonitoring.Tests.csproj b/tests/ScadaLink.HealthMonitoring.Tests/ScadaLink.HealthMonitoring.Tests.csproj
index bae45fa..1de697f 100644
--- a/tests/ScadaLink.HealthMonitoring.Tests/ScadaLink.HealthMonitoring.Tests.csproj
+++ b/tests/ScadaLink.HealthMonitoring.Tests/ScadaLink.HealthMonitoring.Tests.csproj
@@ -9,12 +9,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/tests/ScadaLink.Host.Tests/ScadaLink.Host.Tests.csproj b/tests/ScadaLink.Host.Tests/ScadaLink.Host.Tests.csproj
index 0021a99..68951e7 100644
--- a/tests/ScadaLink.Host.Tests/ScadaLink.Host.Tests.csproj
+++ b/tests/ScadaLink.Host.Tests/ScadaLink.Host.Tests.csproj
@@ -13,14 +13,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.InboundAPI.Tests/ScadaLink.InboundAPI.Tests.csproj b/tests/ScadaLink.InboundAPI.Tests/ScadaLink.InboundAPI.Tests.csproj
index 760425b..0ab5147 100644
--- a/tests/ScadaLink.InboundAPI.Tests/ScadaLink.InboundAPI.Tests.csproj
+++ b/tests/ScadaLink.InboundAPI.Tests/ScadaLink.InboundAPI.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.IntegrationTests/ScadaLink.IntegrationTests.csproj b/tests/ScadaLink.IntegrationTests/ScadaLink.IntegrationTests.csproj
index 3938a71..ebab439 100644
--- a/tests/ScadaLink.IntegrationTests/ScadaLink.IntegrationTests.csproj
+++ b/tests/ScadaLink.IntegrationTests/ScadaLink.IntegrationTests.csproj
@@ -13,14 +13,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.ManagementService.Tests/ScadaLink.ManagementService.Tests.csproj b/tests/ScadaLink.ManagementService.Tests/ScadaLink.ManagementService.Tests.csproj
index 62d292e..1df5a3c 100644
--- a/tests/ScadaLink.ManagementService.Tests/ScadaLink.ManagementService.Tests.csproj
+++ b/tests/ScadaLink.ManagementService.Tests/ScadaLink.ManagementService.Tests.csproj
@@ -7,12 +7,12 @@
false
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/tests/ScadaLink.NotificationService.Tests/ScadaLink.NotificationService.Tests.csproj b/tests/ScadaLink.NotificationService.Tests/ScadaLink.NotificationService.Tests.csproj
index 68fc215..58132bd 100644
--- a/tests/ScadaLink.NotificationService.Tests/ScadaLink.NotificationService.Tests.csproj
+++ b/tests/ScadaLink.NotificationService.Tests/ScadaLink.NotificationService.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.PerformanceTests/ScadaLink.PerformanceTests.csproj b/tests/ScadaLink.PerformanceTests/ScadaLink.PerformanceTests.csproj
index 86f24e5..fb6592c 100644
--- a/tests/ScadaLink.PerformanceTests/ScadaLink.PerformanceTests.csproj
+++ b/tests/ScadaLink.PerformanceTests/ScadaLink.PerformanceTests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.Security.Tests/ScadaLink.Security.Tests.csproj b/tests/ScadaLink.Security.Tests/ScadaLink.Security.Tests.csproj
index 65623a3..3290ac6 100644
--- a/tests/ScadaLink.Security.Tests/ScadaLink.Security.Tests.csproj
+++ b/tests/ScadaLink.Security.Tests/ScadaLink.Security.Tests.csproj
@@ -9,16 +9,16 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.SiteEventLogging.Tests/ScadaLink.SiteEventLogging.Tests.csproj b/tests/ScadaLink.SiteEventLogging.Tests/ScadaLink.SiteEventLogging.Tests.csproj
index 9c20af0..e3d6140 100644
--- a/tests/ScadaLink.SiteEventLogging.Tests/ScadaLink.SiteEventLogging.Tests.csproj
+++ b/tests/ScadaLink.SiteEventLogging.Tests/ScadaLink.SiteEventLogging.Tests.csproj
@@ -9,13 +9,13 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.SiteRuntime.Tests/ScadaLink.SiteRuntime.Tests.csproj b/tests/ScadaLink.SiteRuntime.Tests/ScadaLink.SiteRuntime.Tests.csproj
index d70ec1b..1bc09f8 100644
--- a/tests/ScadaLink.SiteRuntime.Tests/ScadaLink.SiteRuntime.Tests.csproj
+++ b/tests/ScadaLink.SiteRuntime.Tests/ScadaLink.SiteRuntime.Tests.csproj
@@ -9,14 +9,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/tests/ScadaLink.StoreAndForward.Tests/ScadaLink.StoreAndForward.Tests.csproj b/tests/ScadaLink.StoreAndForward.Tests/ScadaLink.StoreAndForward.Tests.csproj
index cd6f7d2..3c3675f 100644
--- a/tests/ScadaLink.StoreAndForward.Tests/ScadaLink.StoreAndForward.Tests.csproj
+++ b/tests/ScadaLink.StoreAndForward.Tests/ScadaLink.StoreAndForward.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/tests/ScadaLink.TemplateEngine.Tests/ScadaLink.TemplateEngine.Tests.csproj b/tests/ScadaLink.TemplateEngine.Tests/ScadaLink.TemplateEngine.Tests.csproj
index 5d24a34..f3399b1 100644
--- a/tests/ScadaLink.TemplateEngine.Tests/ScadaLink.TemplateEngine.Tests.csproj
+++ b/tests/ScadaLink.TemplateEngine.Tests/ScadaLink.TemplateEngine.Tests.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+