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

# Inicio rápido: biblioteca de cliente de PlayFab para C#

> Instale el paquete NuGet PlayFabAllSDK y realice su primera llamada a la API de cliente de PlayFab en una aplicación de consola de C# .NET Core con Visual Studio.

# Inicio rápido: biblioteca de cliente de PlayFab para C\#

Introducción a la biblioteca de cliente de PlayFab para C#. Siga los pasos para instalar el paquete y pruebe el código de ejemplo de una tarea básica.

Este inicio rápido le ayuda a realizar su primera llamada a la API de PlayFab mediante la biblioteca de cliente para C#.

[Documentación de referencia de la API](https://docs.xbox.com/es/services/playfab/api-references.md)

## Requisitos

* Una [cuenta de desarrollador de PlayFab](https://developer.playfab.com).
* Una instalación de [Visual Studio](https://visualstudio.microsoft.com/).

## Configuración del proyecto de CSharp

Instalación

1. Abra Visual Studio y seleccione **Create a new project**.
2. Seleccione **Console App (.Net Core)** para C#.
3. Instale el paquete NuGet de **PlayFabAllSDK**.

![VS: instalación del paquete NuGet del SDK de PlayFab](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)

En este momento, debería poder compilar correctamente el proyecto. La ventana de salida debería contener algo parecido al ejemplo siguiente.

```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 ==========
```

## Configuración de la primera llamada a la API

Esta guía proporciona los pasos mínimos necesarios para realizar su primera llamada a la API de PlayFab. La confirmación se realiza mediante una impresión en la consola.

El nuevo proyecto debería contener un archivo llamado Program.cs, creado automáticamente por Visual Studio. Abra ese archivo y reemplace el contenido por el código del ejemplo que se muestra a continuación (después de pegar el código, es posible que tenga que actualizar el archivo para verlo). La confirmación de la llamada a la API se realizará mediante mensajes escritos en la salida de la consola.

```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
    }
}
```

## Finalización y ejecución

Al ejecutar este programa, se muestra la siguiente salida en la consola

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

* En este momento, puede empezar a realizar otras llamadas a la API y a crear su juego.

* Para crear utilidades de administración, consulte los archivos de código fuente alternativos del archivo zip de PlayFab CSharpSdk que se encuentran en `{CSharpSdk}/PlayFabClientSDK/sources`.

Para ver una lista de todas las llamadas a la API de cliente disponibles, así como muchos otros artículos, consulte [Referencias de la API de PlayFab](https://docs.xbox.com/es/services/playfab/api-references.md).


## Related topics

- [Inicio rápido de datos del jugador](https://docs.xbox.com/es/services/playfab/player-progression/player-data/quickstart.md)
- [Inicio rápido de Unity](https://docs.xbox.com/es/services/playfab/sdks/unity3d/quickstart.md)
- [Inicio rápido de Unreal Engine](https://docs.xbox.com/es/services/playfab/sdks/unreal/quickstart.md)
- [Inicio rápido de NodeJS](https://docs.xbox.com/es/services/playfab/sdks/nodejs/quickstart.md)
- [Inicio rápido de JavaScript para Native y Phaser](https://docs.xbox.com/es/services/playfab/sdks/javascript/quickstart.md)
