---
title: "手術結果を取得"
slug: "get-operation-results"
abstract: "バッチに含まれるすべての操作のリストを見る方法や、特定の操作の参照を保存しバッチ提出後に検査する方法の例。"
---
# 手術結果を取得

バッチを送信した後client.LastBatch検査すると、そのバッチに含まれるすべての操作のリストが表示されます。

using Sitecore.XConnect;
using Sitecore.XConnect.Client;
using Sitecore.XConnect.Operations;
using System;

namespace Documentation
{
 public class SeeAllExecutedOperations
 {
 // Async Example
 public async void ExampleAsync()
 {
 using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
 {
 try
 {
 var newContact = new Sitecore.XConnect.Contact();
 client.AddContact(newContact);

 Guid channelId = Guid.NewGuid();
 string userAgent = "Sample User Agent";

 var interaction = new Sitecore.XConnect.Interaction(newContact, InteractionInitiator.Brand, channelId, userAgent);

 var fakeItemID = Guid.NewGuid();
 var fakeItemVersion = 3;

 Sitecore.XConnect.Collection.Model.PageViewEvent pageView = new Sitecore.XConnect.Collection.Model.PageViewEvent(DateTime.UtcNow, fakeItemID, fakeItemVersion, "en")
 {
 Duration = new TimeSpan(0, 0, 30),
 };

 interaction.Events.Add(pageView);

 client.AddInteraction(interaction);

 await client.SubmitAsync();

 var allOperations = client.LastBatch;

 foreach (IXdbOperation op in allOperations)
 {
 // Output operation type
 var operationType = op.OperationType;
 // Output status
 var status = op.Status;
 }
 }
 catch (XdbExecutionException ex)
 {
 // Handle exception
 }
 }
 }

 // Sync example
 public void ExampleSync()
 {
 using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
 {
 try
 {
 var newContact = new Sitecore.XConnect.Contact();
 client.AddContact(newContact);

 Guid channelId = Guid.NewGuid();
 string userAgent = "Sample User Agent";

 var interaction = new Sitecore.XConnect.Interaction(newContact, InteractionInitiator.Brand, channelId, userAgent);

 var fakeItemID = Guid.NewGuid();
 var fakeItemVersion = 3;

 Sitecore.XConnect.Collection.Model.PageViewEvent pageView = new Sitecore.XConnect.Collection.Model.PageViewEvent(DateTime.UtcNow, fakeItemID, fakeItemVersion, "en")
 {
 Duration = new TimeSpan(0, 0, 30),
 };

 interaction.Events.Add(pageView);

 client.AddInteraction(interaction);

 client.Submit();

 var allOperations = client.LastBatch;

 foreach (IXdbOperation op in allOperations)
 {
 // Output operation type
 var operationType = op.OperationType;
 // Output status
 var status = op.Status;
 }
 }
 catch (XdbExecutionException ex)
 {
 // Handle exception
 }
 }
 }
 }
}

> !注失敗した操作の処理方法については、[例外処理](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/handling-exceptions.html "Handling exceptions") および [再試行操作](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/optimistic-concurrency-in-xconnect.html "Optimistic concurrency in xConnect") に関するドキュメントを参照してください。

## 単一操作結果を得る

特定の操作への参照を保存し、バッチを提出した後に検査することもできます。例えば:

using Sitecore.XConnect;
using Sitecore.XConnect.Client;
using Sitecore.XConnect.Operations;
using System;

namespace Documentation
{
 public class SeeSingleOperation
 {
 // Async Example
 public async void ExampleAsync()
 {
 using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
 {
 try
 {
 var newContact = new Sitecore.XConnect.Contact();
 client.AddContact(newContact);

 Guid channelId = Guid.NewGuid();
 string userAgent = "Sample User Agent";

 var interaction = new Sitecore.XConnect.Interaction(newContact, InteractionInitiator.Brand, channelId, userAgent);

 var fakeItemID = Guid.NewGuid();
 var fakeItemVersion = 3;

 Sitecore.XConnect.Collection.Model.PageViewEvent pageView = new Sitecore.XConnect.Collection.Model.PageViewEvent(DateTime.UtcNow, fakeItemID, fakeItemVersion, "en")
 {
 Duration = new TimeSpan(0, 0, 30),
 };

 interaction.Events.Add(pageView);

 // Save reference to operation
 var addInteractionOperation = client.AddInteraction(interaction);

 await client.SubmitAsync();

 if (addInteractionOperation.Result.Status == SaveResultStatus.Conflict)
 {
 // Do something
 }
 }
 catch (XdbExecutionException ex)
 {
 // Handle exception
 }
 }
 }

 // Sync example
 public void ExampleSync()
 {
 using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
 {
 try
 {
 var newContact = new Sitecore.XConnect.Contact();
 client.AddContact(newContact);

 Guid channelId = Guid.NewGuid();
 string userAgent = "Sample User Agent";

 var interaction = new Sitecore.XConnect.Interaction(newContact, InteractionInitiator.Brand, channelId, userAgent);

 var fakeItemID = Guid.NewGuid();
 var fakeItemVersion = 3;

 Sitecore.XConnect.Collection.Model.PageViewEvent pageView = new Sitecore.XConnect.Collection.Model.PageViewEvent(DateTime.UtcNow, fakeItemID, fakeItemVersion, "en")
 {
 Duration = new TimeSpan(0, 0, 30),
 };

 interaction.Events.Add(pageView);

 // Save reference to operation
 var addInteractionOperation = client.AddInteraction(interaction);

 client.Submit();

 if (addInteractionOperation.Result.Status == SaveResultStatus.Conflict)
 {
 // Do something
 }
 }
 catch (XdbExecutionException ex)
 {
 // Handle exception
 }
 }
 }
}