zoukankan      html  css  js  c++  java
  • Silverlight应用程序 的隔离存储

    我们都知道Silverlight的应用程序其实是属于客户端应用。那么它们如果需要在客户端机器存储一些文件,就自然需要一定特殊的机制 。

    这两天在讲.NET Framework的时候就讲到了隔离存储机制 ,有些朋友对此不甚理解。其实Silverlight就是一个很典型的应用场景。因为Silverlight程序通常权限是很低的。

    首先来看,用户可以通过选项控制是否允许Silverlight程序在本机存储数据

    image

    默认情况下,浏览器中的Silverlight可用的空间为1MB,浏览器外的,则为50MB

    那么,我们如何申请更多的空间呢?通过下面的代码就可以实现

                IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
                MessageBox.Show(string.Format("还剩下的空间是:{0}",file.AvailableFreeSpace));
    
                try//必须用try的方式,否则直接就失败了
                {
                    if (file.IncreaseQuotaTo(6 * 1024 * 1024) == true)//申请6MB的数据空间 
                    {
    
                        IsolatedStorageFileStream fs = new IsolatedStorageFileStream("test.txt", System.IO.FileMode.Create, file);
                        StreamWriter sw = new StreamWriter(fs);
                        sw.WriteLine("Hello,world");
                        sw.Close();
                        MessageBox.Show("写入文件成功");
                    }
                    else
                        MessageBox.Show("申请空间失败");
                }
                catch(Exception ex){
                    MessageBox.Show(ex.Message);
                }

    image

    其实,虽然同样使用了隔离存储的技术,但Silverlight做了进一步对限制,大家如果有兴趣可以看看IsolatedStorageFile这个类型,很多方法都没有了。

    事实上,Silverlight存储文件的路径也非常怪异,它并不在标准的IsolationStorge目录里面

    F:\Users\ChenXizhang\AppData\LocalLow\Microsoft\Silverlight\is\45r33qqq.kk0\rmmfg5ux.wwp\1\s\edch2rv0x2jj1xlcjgzpn4nx0vd4dvcek3se5ezsibfm0gj3qiaaahda\f

    image

  • 相关阅读:
    老人与小孩
    搭讪
    VIM 如何使用系统的剪切板
    Linux 下如何安装 .rpm 文件
    Linux 下如何安装 .bin 文件
    Tomorrow Is A New Day
    Hive 学习(五) Hive之HSQL基础
    Hive 学习(二) hive安装
    Hive 学习(四) Hive的数据类型
    Hive 学习(三) Hive的DDL操作
  • 原文地址:https://www.cnblogs.com/chenxizhang/p/1682492.html
Copyright © 2011-2022 走看看