EchoTex_Payroll/Ease.Core/Utility/ClientStorage.cs
2024-10-14 10:01:49 +06:00

126 lines
2.7 KiB
C#

using System;
using System.IO;
using System.IO.IsolatedStorage;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
namespace Ease.Core.Utility
{
//public sealed class ClientStorage
//{
// private static readonly object SyncRoot = new object();
// private static IsolatedStorageFile _store = IsolatedStorageFile.GetUserStoreForAssembly();
// public static object GetData(string path)
// {
// Stream stream = null;
// try
// {
// stream = new IsolatedStorageFileStream(path, FileMode.Open, _store);
// if (stream == null)
// return null;
// IFormatter formatter = new BinaryFormatter();
// return formatter.Deserialize(stream);
// }
// catch(Exception)
// {
// return null;
// }
// finally
// {
// if (stream != null)
// stream.Close();
// }
// }
// public static void SetData(string path, object value)
// {
// lock (SyncRoot)
// {
// if (value == null)
// {
// try
// {
// if (_store.GetFileNames(path).Length > 0)
// {
// _store.DeleteFile(path);
// return;
// }
// }
// catch (DirectoryNotFoundException)
// {
// return;
// }
// }
// Stream stream = null;
// try
// {
// string[] dirs = path.Split('/');
// if (dirs.Length > 1)
// {
// string dir = string.Join("/", dirs, 0, dirs.Length - 1);
// _store.CreateDirectory(dir);
// }
// stream = new IsolatedStorageFileStream(path, FileMode.OpenOrCreate, _store);
// if (stream != null)
// {
// IFormatter formatter = new BinaryFormatter();
// formatter.Serialize(stream, value);
// }
// }
// catch (Exception) {}
// finally
// {
// if (stream != null)
// stream.Close();
// }
// }
// }
// public static bool Contains(string path)
// {
// try
// {
// return _store.GetFileNames(path).Length > 0;
// }
// catch (DirectoryNotFoundException)
// {
// return false;
// }
// }
// public static void Remove(string path)
// {
// lock (SyncRoot)
// {
// if (path.EndsWith("/"))
// {
// foreach (string subDir in _store.GetDirectoryNames(path))
// {
// Remove(subDir);
// }
// }
// try
// {
// foreach (string file in _store.GetFileNames(path))
// {
// _store.DeleteFile(Path.Combine(Path.GetDirectoryName(path), file));
// }
// }
// catch (DirectoryNotFoundException) { }
// }
// }
// public static void ClearStorage()
// {
// _store.Remove();
// _store = IsolatedStorageFile.GetUserStoreForDomain();
// }
//}
}