/// <summary> /// Loads settings /// </summary> /// <param name="file">The file.</param> /// <param name="fileStorage">The file storage.</param> /// <returns></returns> public static async Task<GameSettingsModel> Load(string file, IFileStorage fileStorage) { string settingsXml = await fileStorage.LoadFileTextAsync(file); if (string.IsNullOrEmpty(settingsXml)) { return null; } using (MemoryStream stream = new MemoryStream()) { byte[] data = Encoding.UTF8.GetBytes(settingsXml); stream.Write(data, 0, data.Length); stream.Position = 0; DataContractSerializer serializer = new DataContractSerializer(typeof(GameSettingsModel)); GameSettingsModel settings = serializer.ReadObject(stream) as GameSettingsModel; return settings; } }