> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# クイックスタート - C# 用 PlayFab クライアントライブラリ

> PlayFabAllSDK NuGet パッケージをインストールし、Visual Studio を使用して C# .NET Core コンソールアプリで最初の PlayFab クライアント API 呼び出しを実行します。

# クイックスタート: C# 用 PlayFab クライアントライブラリ

C# 用 PlayFab クライアントライブラリを使い始めます。手順に従ってパッケージをインストールし、基本的なタスクのサンプルコードを試します。

このクイックスタートでは、C# 用クライアントライブラリを使用して最初の PlayFab API 呼び出しを実行する方法を紹介します。

[API リファレンスドキュメント](/services/playfab/api-references)

## 要件

* [PlayFab 開発者アカウント](https://developer.playfab.com)。
* [Visual Studio](https://visualstudio.microsoft.com/) のインストール。

## CSharp プロジェクトのセットアップ

インストール

1. Visual Studio を開き、**Create a new project** を選択します。
2. C# 用の **Console App (.Net Core)** を選択します。
3. **PlayFabAllSDK** の NuGet パッケージをインストールします。

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/c-sharp/csharp-nuget-add.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=a87483676c9c787fa44ef10da4d0195a" alt="VS - PlayFab SDK 用 nuget パッケージのインストール" width="918" height="336" data-path="images/playfab/sdks/c-sharp/csharp-nuget-add.png" />

この時点で、プロジェクトを正常にコンパイルできるようになっているはずです。出力ウィンドウには、以下の例のようなものが含まれているはずです。

```output theme={null}
1>------ Build started: Project: CSharpGettingStarted, Configuration: Debug Any CPU ------
1>  CSharpGettingStarted -> c:\dev\CSharpGettingStarted\CSharpGettingStarted\bin\Debug\CSharpGettingStarted.exe
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
```

## 最初の API 呼び出しをセットアップする

このガイドでは、最初の PlayFab API 呼び出しを行うために必要な最小限の手順を提供します。確認はコンソール出力を介して行われます。

新しいプロジェクトには Visual Studio によって自動的に作成された Program.cs というファイルが含まれているはずです。そのファイルを開き、内容を以下の例に示されているコードで置き換えます (コードを貼り付けた後、ファイルを更新して表示する必要があるかもしれません)。API 呼び出しの確認は、コンソール出力に書き込まれるメッセージを使用して行われます。

```csharp theme={null}
using System;
using System.Threading;
using System.Threading.Tasks;
using PlayFab;
using PlayFab.ClientModels;

public static class Program
{
    private static bool _running = true;
    static void Main(string[] args)
    {
        PlayFabSettings.staticSettings.TitleId = "144"; // Please change this value to your own titleId from PlayFab Game Manager

        var request = new LoginWithCustomIDRequest { CustomId = "GettingStartedGuide", CreateAccount = true };
        var loginTask = PlayFabClientAPI.LoginWithCustomIDAsync(request);
        // If you want a synchronous result, you can call loginTask.Wait() - Note, this will halt the program until the function returns

        while (_running)
        {
            if (loginTask.IsCompleted) // You would probably want a more sophisticated way of tracking pending async API calls in a real game
            {
                OnLoginComplete(loginTask);
            }

            // Presumably this would be your main game loop, doing other things
            Thread.Sleep(1);
        }

        Console.WriteLine("Done! Press any key to close");
        Console.ReadKey(); // This halts the program and waits for the user
    }

    private static void OnLoginComplete(Task<PlayFabResult<LoginResult>> taskResult)
    {
        var apiError = taskResult.Result.Error;
        var apiResult = taskResult.Result.Result;

        if (apiError != null)
        {
            Console.ForegroundColor = ConsoleColor.Red; // Make the error more visible
            Console.WriteLine("Something went wrong with your first API call.  :(");
            Console.WriteLine("Here's some debug information:");
            Console.WriteLine(PlayFabUtil.GenerateErrorReport(apiError));
            Console.ForegroundColor = ConsoleColor.Gray; // Reset to normal
        }
        else if (apiResult != null)
        {
            Console.WriteLine("Congratulations, you made your first successful API call!");
        }

        _running = false; // Because this is just an example, successful login triggers the end of the program
    }
}
```

## 完了と実行

このプログラムを実行すると、次の出力がコンソールに表示されます。

"Congratulations, you made your first successful API call! Done! Press any key to close."

* この時点で、他の API 呼び出しを開始し、ゲームの構築を始めることができます。

* Admin ユーティリティを構築するには、`{CSharpSdk}/PlayFabClientSDK/sources` にある PlayFab CSharpSdk zip ファイル内の代替ソースファイルを参照してください。

利用可能なすべてのクライアント API 呼び出しの一覧やその他多くの記事については、[PlayFab API リファレンス](/services/playfab/api-references) を参照してください。


## Related topics

- [Unreal Engine クイックスタート](/ja-jp/services/playfab/sdks/unreal/quickstart.md)
- [Unity クイックスタート](/ja-jp/services/playfab/sdks/unity3d/quickstart.md)
- [NodeJS クイックスタート](/ja-jp/services/playfab/sdks/nodejs/quickstart.md)
- [Native と Phaser 向け JavaScript クイックスタート](/ja-jp/services/playfab/sdks/javascript/quickstart.md)
- [クイックスタート Linux](/ja-jp/services/playfab/sdks/c/quickstart-linux.md)
