以编程方式增加隔离存储配额

时间:2014-06-24 08:36:39

标签: silverlight isolatedstorage

我创建了silverlight应用程序,我使用了独立的存储来在本地存储数据。但它最初只提供1 MB的配额。我想以编程方式增加隔离存储配额。我找到了解决方案

public void IncreaseQuota_OnClick(object sender, MouseEventArgs e)

{

try
{
    using (var store = IsolatedStorageFile.GetUserStoreForApplication())
    {
        // Request 5MB more space in bytes.
        Int64 spaceToAdd = 5242880;
        Int64 curAvail = store.AvailableFreeSpace;

        if (curAvail < spaceToAdd)
        {

            // Request more quota space.
            if (!store.IncreaseQuotaTo(store.Quota + spaceToAdd))
            {
                // The user clicked NO to the
                // host's prompt to approve the quota increase.
            }
            else
            {
                // The user clicked YES to the
                // host's prompt to approve the quota increase.
            }
        }
    }
}

catch (IsolatedStorageException)
{     

}

}

当我用除用户启动的事件之外的简单方法编写此代码时,它不起作用。请告诉我如何增加隔离存储配额。

1 个答案:

答案 0 :(得分:0)

这是一个安全考虑因素:

“调用IsolatedStorageFile.IncreaseQuotaTo方法以增加隔离存储配额时,将调用此方法。”

“CheckSecuritySettings应该考虑拒绝服务攻击的可能性。例如,它应该仅在用户启动方法调用方法时提示用户 点击按钮等事件。“

http://msdn.microsoft.com/en-us/library/system.appdomainmanager.checksecuritysettings%28v=vs.110%29.aspx

您可以申请受信任的应用程序权限。