Der folgende Code löst eine Ausnahme nennen ...Silverlight 3 IncreaseQuotaTo schlägt fehl, wenn ich AvailableFreeSpace erste
private void EnsureDiskSpace()
{
using (IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForSite())
{
const long NEEDED = 1024 * 1024 * 100;
if (file.AvailableFreeSpace < NEEDED)
{
if (!file.IncreaseQuotaTo(NEEDED))
{
throw new Exception();
}
}
}
}
Aber dieser Code nicht (es zeigt die Silverlight "Erhöhung Quote" Dialog) ...
private void EnsureDiskSpace()
{
using (IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForSite())
{
const long NEEDED = 1024 * 1024 * 100;
if (file.Quota < NEEDED)
{
if (!file.IncreaseQuotaTo(NEEDED))
{
throw new Exception();
}
}
}
}
Der einzige Unterschied im Code ist, dass der erste überprüft file.AvailableFreeSpace und der zweite überprüft file.Quota.
Sie dürfen den verfügbaren Speicherplatz nicht prüfen, bevor Sie mehr anfordern? Es scheint, als hätte ich ein paar Beispiele im Internet gesehen, die zuerst den verfügbaren Platz testen. Wird dies in SL3 nicht mehr unterstützt? Meine Anwendung ermöglicht es Benutzern, Dateien von einem Server herunterzuladen und lokal zu speichern. Ich möchte das Kontingent wirklich um 10% erhöhen, wenn der Benutzer kein sapce mehr hat. Ist das möglich?