GameSaveContainer.SubmitUpdatesAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Invia un set di modifiche ai BLOB di salvataggio del gioco in questo contenitore. Le modifiche possono essere scritture in BLOB o l'eliminazione di BLOB esistenti. Se il contenitore non esiste, ne viene creato uno nuovo. Tutte le scritture e gli aggiornamenti vengono applicati atomicamente. Il tentativo di scrivere ed eliminare lo stesso BLOB genera un errore. Solo 16 MB di dati possono essere scritti per chiamata.
public:
virtual IAsyncOperation<GameSaveOperationResult ^> ^ SubmitUpdatesAsync(IMapView<Platform::String ^, IBuffer ^> ^ blobsToWrite, IIterable<Platform::String ^> ^ blobsToDelete, Platform::String ^ displayName) = SubmitUpdatesAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<GameSaveOperationResult> SubmitUpdatesAsync(IMapView<winrt::hstring, IBuffer const&> const& blobsToWrite, IIterable<winrt::hstring> const& blobsToDelete, winrt::hstring const& displayName);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<GameSaveOperationResult> SubmitUpdatesAsync(IReadOnlyDictionary<string,IBuffer> blobsToWrite, IEnumerable<string> blobsToDelete, string displayName);
function submitUpdatesAsync(blobsToWrite, blobsToDelete, displayName)
Public Function SubmitUpdatesAsync (blobsToWrite As IReadOnlyDictionary(Of String, IBuffer), blobsToDelete As IEnumerable(Of String), displayName As String) As IAsyncOperation(Of GameSaveOperationResult)
Parametri
- blobsToWrite
Tipo: IMapView<; String, IBuffer>; [JavaScript/C++] | System.Collections.Generic.IReadOnlyDictionary<; String, IBuffer>; [.NET]
Raccolta di nomi BLOB e dati da scrivere per ogni BLOB. La lunghezza massima per un nome BLOB è di 63 caratteri.
Tipo: IIterable<; String>; [JavaScript/C++] | System.Collections.Generic.IEnumerable<; String>; [.NET]
Raccolta contenente i nomi di stringa dei BLOB da eliminare. La lunghezza massima per un nome BLOB è di 63 caratteri.
- displayName
-
String
Platform::String
winrt::hstring
Tipo: String [JavaScript] | System.String [.NET] | Platform::String [C++]
Nome visualizzato del contenitore del gioco di salvataggio. Impostare questo valore sul nome che verrà visualizzato per il salvataggio del gioco. La lunghezza massima per il nome visualizzato è di 127 caratteri.
Restituisce
Tipo: IAsyncOperation<; GameSaveOperationResult>;
IAsyncOperation<; GameSaveOperationResult>, che rappresenta lo stato dell'operazione asincrona.
- Attributi
Commenti
Al termine dell'operazione asincrona, controllare la proprietà Status del risultato per determinare se l'operazione ha avuto esito positivo con GameSaveErrorStatus.Ok.
Ogni TitleID/SCID è limitato a un totale di 256 MB di archiviazione per utente.
Quando un titolo ha raggiunto il limite di archiviazione per un utente, le chiamate a SubmitUpdatesAsync avranno esito negativo.
Se un nome BLOB o il nome visualizzato supera la lunghezza massima, il salvataggio del gioco non riuscirà a caricare.
Le chiamate SubmitUpdatesAsync non devono presupporre che una chiamata SubmitUpdatesAsync futura verrà completata correttamente per lasciare il contenitore in uno stato valido. Ogni chiamata SubmitUpdatesAsync deve lasciare il contenuto del contenitore specificato in uno stato valido per la lettura successiva dell'app. Ad esempio, se un giocatore acquista cibo con oro in un gioco, i nuovi valori per l'oro e il cibo devono essere aggiornati nella stessa chiamata a SubmitUpdatesAsync. Ciò garantisce che entrambi i valori vengano aggiornati contemporaneamente o in caso di errore di alimentazione o di un altro evento che impedisce l'aggiornamento, sia il cibo che l'oro avranno ancora i valori originali.