2010-04-10 25 views
1

J'essaie la fonction de stockage isolé de Silverlight. Actuellement en cours d'exécution Silverlight à travers la page ASP.NET.Silverlight ne demande pas d'augmenter le quota

J'ai écrit du code pour demander un stockage supplémentaire mais je ne suis pas invité à en ajouter d'autres.

private void requestButton_Click(object sender, RoutedEventArgs e) 
{ 
    using (IsolatedStorageFile store = 
     IsolatedStorageFile.GetUserStoreForApplication()) 
    { 
     if (store.AvailableFreeSpace >= 1000*1024) return; 

     long usedSpace = store.Quota - store.AvailableFreeSpace; 
     if (store.IncreaseQuotaTo(usedSpace + 1000*1024)) 
      statusTextBlock.Text = 
       string.Format("Quota has been increased to {0}", store.Quota); 
     else 
      statusTextBlock.Text = 
       "You have denied quota increase... you Inglorious Basterd..."; 
    } 
} 

onglet de Silverlight Application Storage doeslist la page localhost ASP.NET hébergement Silverlight comme indiqué ci-dessous.

alt text

Selon la capture d'écran, http://localhost:54389 a 1.0MB de la zone de stockage disponible.
Existe-t-il une restriction sur localhost sites Web qu'une invite est ignorée?

Quelles sont les étapes requises pour que Silverlight invite les utilisateurs à augmenter leur quota?

+0

Est-il possible que votre code effectue beaucoup de traitement avant d'appeler l'augmentation? Si trop de temps s'est écoulé, il ne vous sera plus demandé. –

Répondre

1

Peut-être que cela peut sembler un peu simpliste mais votre capture d'écran montre que l'espace courant utilisé par localhost: 54389 est 0.0MB. Par conséquent, le AvailableFreeSpace sera de 1,0 Mo (la taille du quota actuel). Votre code contient maintenant cette ligne: -

if (store.AvailableFreeSpace >= 1000*1024) return; 

Sur cette base, je m'attendrais à ce que votre code revienne à ce stade.