示例#1
0
        public void SetNavigationState(string data)
        {
            var frameDescription = DataContractSerialization.Deserialize <MtFrameDescription>(data, MtSuspensionManager.KnownTypes.ToArray());

            _pages       = frameDescription.PageStack;
            CurrentIndex = frameDescription.CurrentPageIndex;
        }
 /// <summary>Gets an object which is deserialized with <see cref="DataContractSerialization"/>. </summary>
 /// <typeparam name="T">The type of the object. </typeparam>
 /// <param name="key">The key. </param>
 /// <returns>The object. </returns>
 public T Get <T>(string key)
 {
     if (PageState != null)
     {
         return(DataContractSerialization.Deserialize <T>((string)PageState[key]));
     }
     return(default(T));
 }
 public static DataTable Decrypt(string encryptedString)
 {
     if (string.IsNullOrEmpty(encryptedString))
     {
         return(null);
     }
     return(DataContractSerialization.Deserialize <DataTable>(Utils.Decompress(AesCryptography.Decrypt(encryptedString))) as DataTable);
 }
        /// <summary>Reads and deserializes a setting object from a file (uses the DataContractSerializer).</summary>
        /// <typeparam name="TValue">The type of the setting value.</typeparam>
        /// <param name="key">The key.</param>
        /// <param name="defaultValue">The default setting 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 <TValue> GetSettingFromFileAsync <TValue>(string key, TValue defaultValue, bool roaming = false, Type[] extraTypes = null)
        {
            var file = roaming ? await ApplicationData.Current.RoamingFolder.CreateFileAsync(key + ".settings", CreationCollisionOption.OpenIfExists) :
                       await ApplicationData.Current.LocalFolder.CreateFileAsync(key + ".settings", CreationCollisionOption.OpenIfExists);

            var xml = await FileIO.ReadTextAsync(file, UnicodeEncoding.Utf8);

            return(!String.IsNullOrEmpty(xml) ? DataContractSerialization.Deserialize <TValue>(xml, extraTypes) : defaultValue);
        }
示例#5
0
        /// <summary>Used set the serialized the current page stack (used in the SuspensionManager). </summary>
        /// <param name="data">The data. </param>
        public void SetNavigationState(string data)
        {
            var frameDescription = DataContractSerialization.Deserialize <MtFrameDescription>(data, MtSuspensionManager.KnownTypes.ToArray());

            _pages       = frameDescription.PageStack;
            CurrentIndex = frameDescription.CurrentPageIndex;

            if (CurrentIndex != -1)
            {
                ContentGrid.Children.Add(CurrentPage.GetPage(this).InternalPage);
                RaisePageOnNavigatedTo(CurrentPage, NavigationMode.Back);
            }
        }
示例#6
0
        public static object ReadDataContract(string Container, string DocumentType, string DocumentID, Type DataContractType)
        {
            try
            {
                string Xml = Read(Container, DocumentType, DocumentID);
                if (Xml == null)
                {
                    return(null);
                }
                return(DataContractSerialization.Deserialize(Xml, DataContractType));
            }
            catch (Exception ex) { LittleWatson.ReportException(ex); }

            return(null);
        }
示例#7
0
 public static void ReplaceWith(String Xml)
 {
     try {
         if (Xml == null)
         {
             return;
         }
         current = (UserSettings)DataContractSerialization.Deserialize(Xml, typeof(UserSettings));
         current.VerifyDefaults();
         current.DoneLoading = true;
         current.Save();
         current.UpdateAgent();
         current.UpdateReminders();
     }catch (Exception ex)
     {
         LittleWatson.ReportException(ex);
     }
 }
示例#8
0
        public static void LoadFromFile <TEntity, TIdentity>(this EntityContainer <TEntity, TIdentity> container, string fileName, List <TEntity> defaultList = null)
            where TEntity : class, IEntity <TIdentity>
        {
            var data = FileUtilities.ReadAllText(fileName);

            if (data != null)
            {
                container.Collection.Initialize(DataContractSerialization.Deserialize <List <TEntity> >(data));
            }
            else if (defaultList != null)
            {
                container.Collection.Initialize(defaultList);
            }
            else
            {
                container.Collection.Clear();
            }
        }