public static void DeserializeFromContainer(this object obj, SerializedDataContainer container)
        {
            obj.ThrowIfNullArgument(nameof(obj));
            container.ThrowIfNullArgument(nameof(container));

            if (container.data.IsNullOrEmpty())
            {
                throw new ArgumentException("Container must have data", nameof(container));
            }

            obj.DeserializeFromString(container.data);
        }
Example #2
0
        private SerializedDataContainer GetSerializedData()
        {
            // Find the current data stored in the application resources.
            SerializedDataContainer data = new SerializedDataContainer()
            {
                Characters = (List <Character>)Application.Current.FindResource(nameof(SerializedDataContainer.Characters)),
                Cities     = (List <City>)Application.Current.FindResource(nameof(SerializedDataContainer.Cities)),
                Locations  = (List <Location>)Application.Current.FindResource(nameof(SerializedDataContainer.Locations)),
                Items      = (List <Item>)Application.Current.FindResource(nameof(SerializedDataContainer.Items))
            };

            return(data);
        }
Example #3
0
        public bool LoadDataFromFile(string fileName)
        {
            SerializedDataContainer appData = SerializationHandler.LoadData(fileName);

            if (appData != null)
            {
                SetFileData(appData);
                CurrentSaveFilePath = fileName;
                return(true);
            }
            else
            {
                return(false);
            }
        }