共用方式為


GameSaveContainer.SubmitUpdatesAsync 方法

定義

將此容器中的遊戲儲存 Blob 提交一組變更。 變更可以寫入 Blob 或刪除現有的 Blob。 如果容器不存在,則會建立新的容器。 所有寫入和更新都會以不可部分完成的方式套用。 嘗試寫入和刪除相同的 Blob 會導致錯誤。 每個呼叫只能寫入 16 MB 的資料。

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)

參數

blobsToWrite

IMapView<String,IBuffer>

IReadOnlyDictionary<String,IBuffer>

IMapView<Platform::String,IBuffer>

IMapView<winrt::hstring,IBuffer>

類型: IMapView < ;字串、IBuffer > 、 [JavaScript/C++] | System.Collections.Generic.IReadOnlyDictionary < ;String、 IBuffer > ; [.NET]

Blob 名稱和要為每個 Blob 寫入的資料集合。 Blob 名稱的最大長度為 63 個字元。

blobsToDelete

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

類型: IIterable < ;字串 > ; [JavaScript/C++] | System.Collections.Generic.IEnumerable < ;字串 > ; [.NET]

包含要刪除之 Blob 字串名稱的集合。 Blob 名稱的最大長度為 63 個字元。

displayName
String

Platform::String

winrt::hstring

類型: 字串 [JavaScript] | System.String [.NET] | Platform::String [C++]

儲存遊戲容器的顯示名稱。 將此設定為將針對遊戲儲存顯示的名稱。 顯示名稱的最大長度為 127 個字元。

傳回

類型: IAsyncOperation < ;GameSaveOperationResult > ;

IAsyncOperation < ;GameSaveOperationResult > ; 代表非同步作業的狀態。

屬性

備註

非同步作業完成之後,請檢查結果的 Status 屬性,以判斷作業是否成功與 GameSaveErrorStatus.Ok

每個 TitleID/SCID 限制為每個使用者總共 256 MB 的儲存體。

當使用者的標題達到其儲存限制時, 對 SubmitUpdatesAsync 的 呼叫將會失敗。

如果 Blob 名稱或顯示名稱超過最大長度,遊戲儲存將無法上傳。

SubmitUpdatesAsync 呼叫不得假設未來的 SubmitUpdatesAsync 呼叫將會順利完成,才能讓容器保持有效狀態。 每個 SubmitUpdatesAsync 呼叫都必須讓指定容器的內容保持為有效的狀態,以供應用程式稍後讀取。 例如,如果玩家在遊戲中購買具有金級的食物,則應該在 與 SubmitUpdatesAsync相同的呼叫中更新金級和食物的新值。 這可確保這兩個值都會同時更新,或在發生電源故障或防止更新的一些其他事件時更新,食物和金級仍然會有其原始值。

適用於

另請參閱