public string GetNavigationState(MtFrame frame) { // remove pages which do not support tombstoning var pagesToSerialize = _pages; var currentIndexToSerialize = CurrentIndex; var firstPageToRemove = _pages.FirstOrDefault(p => { var page = p.GetPage(frame); return(!page.IsSuspendable); }); if (firstPageToRemove != null) { var index = pagesToSerialize.IndexOf(firstPageToRemove); pagesToSerialize = _pages.Take(index).ToList(); currentIndexToSerialize = index - 1; } var output = DataContractSerialization.Serialize( new MtFrameDescription { CurrentPageIndex = currentIndexToSerialize, PageStack = pagesToSerialize }, true, MtSuspensionManager.KnownTypes.ToArray()); return(output); }
/// <summary>Serializes and writes a setting object in a file (uses the DataContractSerializer).</summary> /// <typeparam name="TValue">The type of the setting value.</typeparam> /// <param name="key">The key.</param> /// <param name="value">The value.</param> /// <param name="roaming">If set to <c>true</c> the setting is synchronized between devices.</param> /// <param name="extraTypes">The extra types.</param> /// <returns>The task.</returns> public static async Task SetSettingToFileAsync <TValue>(string key, TValue value, bool roaming = false, Type[] extraTypes = null) { var file = roaming ? await ApplicationData.Current.RoamingFolder.CreateFileAsync(key + ".settings", CreationCollisionOption.ReplaceExisting) : await ApplicationData.Current.LocalFolder.CreateFileAsync(key + ".settings", CreationCollisionOption.ReplaceExisting); var xml = DataContractSerialization.Serialize(value, true, extraTypes); await FileIO.WriteTextAsync(file, xml, UnicodeEncoding.Utf8); }
public static string Encrypt(DataTable dt) { if (dt == null) { return(null); } return(AesCryptography.Encrypt(Utils.Compress(DataContractSerialization.Serialize(dt)))); }
public static void WriteDataContract(string Container, string DocumentType, string DocumentID, Object DataContract) { try { string Xml = DataContractSerialization.Serialize(DataContract); WriteAsync(Container, DocumentType, DocumentID, Xml); } catch (Exception ex) { LittleWatson.ReportException(ex); } }
public static void SaveToFile <TEntity, TIdentity>(this EntityContainer <TEntity, TIdentity> container, string fileName) where TEntity : class, IEntity <TIdentity> { FileUtilities.WriteAllText(fileName, DataContractSerialization.Serialize <List <TEntity> >(container.Collection.ToList())); }
/// <summary>Adds an object which is serialized with <see cref="DataContractSerialization"/>. </summary> /// <typeparam name="T">The type of the object. </typeparam> /// <param name="key">The key. </param> /// <param name="obj">The object. </param> /// <param name="extraTypes">The additional types. </param> public void Set <T>(string key, T obj, Type[] extraTypes = null) { PageState[key] = DataContractSerialization.Serialize(obj, true, extraTypes); }