From 9ae2ae02ef7ddf5b79c0d412ea0a7b325860831d Mon Sep 17 00:00:00 2001
From: Niko Ehrenfeuchter <nikolaus.ehrenfeuchter@unibas.ch>
Date: Tue, 13 Feb 2018 00:22:18 +0100
Subject: [PATCH] Use XmlReader in Deserialize().

---
 ATxCommon/Serializables/ServiceConfig.cs | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/ATxCommon/Serializables/ServiceConfig.cs b/ATxCommon/Serializables/ServiceConfig.cs
index dca7acc..07a05da 100644
--- a/ATxCommon/Serializables/ServiceConfig.cs
+++ b/ATxCommon/Serializables/ServiceConfig.cs
@@ -2,6 +2,7 @@
 using System.Collections.Generic;
 using System.Configuration;
 using System.IO;
+using System.Xml;
 using System.Xml.Serialization;
 using NLog;
 
@@ -34,10 +35,11 @@ namespace ATxCommon.Serializables
 
         public static ServiceConfig Deserialize(string file) {
             Log.Debug("Trying to read service configuration XML file: [{0}]", file);
-            var xs = new XmlSerializer(typeof(ServiceConfig));
-            var reader = File.OpenText(file);
-            var config = (ServiceConfig) xs.Deserialize(reader);
-            reader.Close();
+            var serializer = new XmlSerializer(typeof(ServiceConfig));
+            ServiceConfig config;
+            using (var reader = XmlReader.Create(file)) {
+                config = (ServiceConfig) serializer.Deserialize(reader);
+            }
             ValidateConfiguration(config);
             Log.Debug("Finished deserializing service configuration XML file.");
             return config;
-- 
GitLab