`
terryfeng
  • 浏览: 503899 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Silverlight Isolated Storage 独立存储

阅读更多

Silverlight  独立存储 好比Cookie一样,可以在客户端存储信息,但是他更加强大,独立存储提供了客户端指定目录下的读写权限,可以任意的向其中添加删除修改读取文件。

独立存储将文件存储在系统盘-当前用户-本地的-指定文件夹当中。

独立存储有两个作用域 应用程序级别和站点级别 他就像是一个为Silverlight专门提供的文件夹,用来存放Silverlight的文件信息,比如XML、TXT、Dat、Html等,格式不限只要对你有用。

 

基础操作语法

using System.IO.IsolatedStorage;
using System.IO;
       void CreateDir(string dirName)
       {
           IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication();
           storeFile.CreateDirectory(dirName);
       }

       void SaveFile(string savePath, string content)
       {
           IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication();
           IsolatedStorageFileStream sf = storeFile.CreateFile(savePath);
           using (StreamWriter sw = new StreamWriter(sf))
           {
               sw.WriteLine(content);
           }
           sf.Close();
       }

       void LoadFile(string readPath)
       {
           string content = string.Empty;
           using (IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication())
           {
               if (storeFile.FileExists(readPath))
               {
                   StreamReader sr =
                       new StreamReader(storeFile.OpenFile
                           (readPath, FileMode.Open, FileAccess.Read));
                   content = sr.ReadToEnd();
               }
           }
       }

       void DeleteFile(string path)
       {
           using (IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication())
           {
               storeFile.DeleteFile(path);
           }
       }

       void DeleteDir(string dirPath)
       {
           using (IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication())
           {
               storeFile.DeleteDirectory(dirPath);
           }
       }

       void LoadDirs()
       {
           using (IsolatedStorageFile storeFile =
               IsolatedStorageFile.GetUserStoreForApplication())
           {
               var itemSource = storeFile.GetDirectoryNames("*");
           }
       }

名值对方式存储读取

这种方式就很像Cookie了
       string ReadSettings(string key)
       {
           IsolatedStorageSettings settings =
               IsolatedStorageSettings.ApplicationSettings;
           return settings[key].ToString();
       }

       void SaveSettings(string key, string value)
       {
           IsolatedStorageSettings settings =
               IsolatedStorageSettings.ApplicationSettings;
           settings.Add(key, value);
           settings.Save();
       }

       void ClearSettings()
       {
           IsolatedStorageSettings settings =
               IsolatedStorageSettings.ApplicationSettings;
           settings.Clear();
       }

独立存储的文件与名值对分别有两个示例,可以在目录地址链接下载代码阅读。

独立存储的空间大小

独立存储默认的空间上限是1M,可以通过代码设置让这个上限加大。代码如下

           //使1用?应|用?程ì序ò存?储¢创′建¨对?象ó
            using (IsolatedStorageFile storeFile =
                IsolatedStorageFile.GetUserStoreForApplication())
            {
                //获?取?旧é空?间?大ó小?
                long oldSize = storeFile.AvailableFreeSpace;
                //定¨义?新?增?空?间?大ó小?
                long newSize = 2097152;
                if (oldSize < newSize)
                {
                    //分?配?新?的?存?储¢空?间?
                    storeFile.IncreaseQuotaTo(newSize);
                }
            }

 

客户可以通过邮件Silverlight 控件选择Silverlight配置中 ->应用程序存储选项卡 中查看本地有存储了那些Silverlight应用存储信息。

image

分享到:
评论

相关推荐

    SLIsolatedStorage

    - Silverlight的IsolatedStorage空间大小默认由浏览器设置,开发者无法直接增加存储容量。然而,可以使用`AvailableFreeSpace`属性检查当前剩余空间,并根据需要进行数据管理,避免空间不足的情况。 - 用户可以在...

    SL-IsolatedStorageSourcecode_zips.zip

    1. **IsolatedStorage概念**:源码会展示如何创建、读取和写入Isolated Storage。这包括使用`IsolatedStorageFile`类来获取存储区,以及`IsolatedStorageFileStream`类来操作文件。 2. **权限管理**:Silverlight...

    SilverLight学习笔记

    本篇笔记主要探讨SilverLight中的独立存储(Isolated Storage)特性及其应用场景。 独立存储是SilverLight中一种安全、隔离的数据存储机制,允许应用程序在用户计算机上存储少量数据,如用户个性化信息、访问记录等...

    ImagesInIsolatedStorage

    本篇文章将详细探讨如何在Silverlight应用中实现从服务器端下载图片至客户端的Isolated Storage(隔离存储),并进一步加载和显示这些图片。 首先,我们需要了解Isolated Storage,它是.NET Framework提供的一种...

    Silverlight 如何导出图片

    - **Isolated Storage**:Silverlight提供了Isolated Storage,允许应用程序在用户机器上安全地存储数据,但仍然不能直接导出到本地文件系统。 - **Web服务**:通过与服务器通信,比如使用WCF服务或ASP.NET Web ...

    Silverlight OOB应用源码

    - 应用程序通过`IsolatedStorage`存储必要的信息和文件。 - 使用`Deployment.Current.Dispatcher.BeginInvoke`方法在后台线程中执行安装操作,以避免阻塞UI。 - 设置应用程序的权限,如是否始终在线、是否允许...

    Silverlight 及其相关技术简介

    Isolated Storage为每个应用程序提供了独立的存储空间,确保数据的安全性和隐私性,同时避免与其他应用冲突。它提供了一套API,使得开发者可以方便地读写和管理这些存储的数据,类似于Cookie,但提供了更大的存储...

    Silverlight2.0功能展示Demo源码

    14、Silverlight(16) - 2.0数据之独立存储(Isolated Storage) 15、Silverlight(17) - 2.0数据之详解DataGrid, 详解ListBox 16、Silverlight(18) - 2.0视频之详解MediaElement, 开发一个简易版的全功能播放器 17、...

    Silverlight 4 API 文档

    - **本地存储和OOB功能**:IsolatedStorage提供本地数据存储,OOB功能支持权限和桌面图标设置。 - **安全性**:Silverlight的安全模型,包括沙箱环境和权限管理。 **开发工具** Visual Studio和Expression Blend...

    silverlight源码例子

    源码可能涵盖了如何利用Isolated Storage存储数据,以及如何使用Application Deployment API实现离线应用的功能。 通过深入研究这些源码例子,开发者不仅可以掌握Silverlight的基本用法,还能探索其高级特性,提升...

    Silverlight 3 完整示例(包含各种交互,注释完整)

    `IsolatedStorage`允许在本地存储用户数据,实现离线状态下的应用持久化。 5. **高分辨率支持和自适应布局**:Silverlight 3改进了对不同屏幕分辨率和设备的支持,开发者可以通过响应式设计确保应用在各种设备上...

    silverlight 入门

    - **本地存储**:使用IsolatedStorage类进行本地数据持久化。 ### 8. 部署与测试 - **发布项目**:通过Visual Studio的发布功能,将Silverlight应用程序部署到Web服务器。 - **测试与调试**:在浏览器中测试应用,...

    Silverlight for Windows Phone 7

    5. **本地存储**:提供Isolated Storage服务,允许应用程序在本地存储数据,保证用户数据的安全性和私密性。 6. **通信API**:包括Web服务调用、设备API访问等,使应用可以与其他系统和服务进行交互。 **四、开发...

    Beginning Silverlight 5 in C#.pdf

    17. 隔离存储(Isolated Storage):这是一种针对Silverlight应用的安全存储机制,允许应用程序在用户的机器上存储数据,而不需要访问权限。 18. 系统集成与设备支持(System Integration and Device Support):...

    Silverlight UI C# 后台 文件上传代码

    `IsolatedStorage`提供了一个安全的沙盒环境,用于在用户机器上存储数据。 3. **C#后台处理**: 文件实际的上传工作通常由C#后台处理。当Silverlight前端选择好文件并准备好上传时,它会发起一个异步调用到服务器...

    silverlight3.0 七彩俄罗斯方块

    7. **数据持久化**:虽然未直接提及,但游戏可能包含了用户得分记录和游戏状态的保存功能,这通常需要数据库支持或者使用Silverlight的Isolated Storage来存储本地数据。 8. **网络通信**:虽然是一款单机游戏,但...

    silverlight 图片转换

    这可能涉及到IsolatedStorage类来访问本地存储,或者使用WebClient类上传到服务器。 8. **安全限制**:由于Silverlight运行在沙盒环境中,它有一些安全限制,比如不能直接访问本地文件系统。开发者需要通过Isolated...

    SilverLight 4开发教程

    - **离线支持**:讲解如何利用 Isolated Storage 实现离线功能。 - **多媒体集成**:包括视频和音频的播放控制。 - **网络通信**:介绍 AJAX、Web 服务调用等网络通信技术。 ##### 4.6 安全与调试 - **安全机制**:...

    Silverlight连接数据数据库DataSet填充数据

    请注意,为了在Silverlight中运行这段代码,你可能需要使用`IsolatedStorage`来保存连接字符串,因为Silverlight应用无法直接访问本地文件系统。 一旦数据填充到DataSet,你就可以在Silverlight用户界面中显示这些...

Global site tag (gtag.js) - Google Analytics