Issues with tutorial - Serializing data from/to disk
<p>So I'm trying to work through the Catel 'getting started' examples here:</p>

<p><a href="https://catelproject.atlassian.net/wiki/display/CTL/Getting+started+with+WPF" rel="nofollow">https://catelproject.atlassian.net/wiki/display/CTL/Getting+started+with+WPF</a></p>

<p>But I'm getting some errors in visual studio on step 3 (Serializing data from/to disk) - <a href="https://catelproject.atlassian.net/wiki/pages/viewpage.action?pageId=15630363" rel="nofollow">https://catelproject.atlassian.net/wiki/pages/viewpage.action?pageId=15630363</a></p>

<p>I create a 'top container' model called 'Settings' and a 'child class' of this called 'Global' (pretty much exactly the same as the tutorial except for less properties and different model names).</p>

<p>I create an interface based on the example:</p>

<pre><code>using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using App.Models;

namespace App.Services.Interfaces
{
    public interface IGlobalService
    {
        IEnumerable&lt;Global&gt; LoadGlobals();
        void SaveGlobals(IEnumerable&lt;Global&gt; globals);
    }
}
</code></pre>

<p>Then I create the service implementation:</p>

<pre><code>using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using Catel.Collections;
using Catel.Data;
using App.Models;
using App.Services.Interfaces;

namespace App.Services
{
    public class GlobalService : IGlobalService
    {
        private readonly string _path;

        public GlobalService()
        {
            string directory = Catel.IO.Path.GetApplicationDataDirectory("CatenaLogic", "WPF.GettingStarted");

            _path = Path.Combine(directory, "global.xml");
        }

        public IEnumerable&lt;Global&gt; LoadGlobals()
        {
            if (!File.Exists(_path))
            {
                return new Global[] { };
            }

            using (var fileStream = File.Open(_path, FileMode.Open))
            {
                var settings = Settings.Load(fileStream, SerializationMode.Xml);
                return settings.Globals;
            }
        }

        public void SaveGlobals(IEnumerable&lt;Global&gt; globals)
        {
            var settings = new Settings();
            settings.Globals.ReplaceRange(globals);
            settings.Save(_path, SerializationMode.Xml);
        }
    }
} 
</code></pre>

<p>Visual studio then throws 2 errors and a warning:</p>

<blockquote>
  <p>Error CS0619  'SavableModelBase.Load(Stream,
  SerializationMode)' is obsolete: 'Please use <code>Load(Stream,
  SerializationMode, ISerializationConfiguration)</code> instead. Will be
  removed in version
  5.0.0.'   </p>
  
  <p>Error CS0619  'SavableModelBase.Save(string,
  SerializationMode)' is obsolete: 'Please use <code>Save(string,
  SerializationMode, ISerializationConfiguration)</code> instead. Will be
  removed in version 5.0.0.'</p>
  
  <p>Warning   CS0618  'CollectionExtensions.ReplaceRange(ObservableCollection,
  IEnumerable)' is obsolete: 'Please use <code>ReplaceRange(this
  ICollection&lt;T&gt;, IEnumerable&lt;T&gt;)</code> instead. Will be treated as an error
  from version 5.0.0. Will be removed in version 5.0.0.'</p>
</blockquote>

<p>So far all research I have done on this has come up blank. What is 'ISerializationConfiguration' and how do I implement it? Am I missing something obvious?</p>

<p>Setup is:</p>

<ul>
<li>Visual Studio 2015 Community (14.0.25425.01 Update 3)</li>
<li>Project targeting .NET 4.5.2</li>
<li>Project initialized using New > Online > WPF application using Catel</li>
<li>NuGet:

<ul>
<li>Catel.Core 4.5.3</li>
<li>Catel.Extensions.Controls 4.5.3</li>
<li>Catel.MVVM 4.5.3</li>
<li>Catel.Fody 2.14.0</li>
</ul></li>
</ul>

<p>Any help would be much appreciated.</p>