Catel.MVVM.ViewModelBase.DeserializeFromTombstoning C# (CSharp) Method

DeserializeFromTombstoning() private method

Deserializes the data from a previously stored tombstoning state.
private DeserializeFromTombstoning ( byte data ) : void
data byte The previously stored data.
return void
        internal void DeserializeFromTombstoning(byte[] data)
        {
            try
            {
                using (var memoryStream = new MemoryStream(data))
                {
                    var xmlSerializer = SerializationFactory.GetXmlSerializer();
                    var propertyValues = xmlSerializer.DeserializeMembers(GetType(), memoryStream, null);

                    LeanAndMeanModel = true;

                    foreach (var propertyValue in propertyValues)
                    {
                        SetValue(propertyValue.Name, propertyValue.Value, false, false);
                    }

                    LeanAndMeanModel = false;
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex, "An error occurred while deserializing the view model from tombstoned data");
            }
        }
        #endregion