> For the complete documentation index, see [llms.txt](https://icotakuscrapper.gitbook.io/documentation-dicotakuscrapper/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://icotakuscrapper.gitbook.io/documentation-dicotakuscrapper/les-animes/restituer-une-fiche.md).

# Restituer une fiche

Vous découvrirez, tout au long de cette section, comment restituer une fiche.

{% hint style="info" %}
Lorsque que vous scrappez une fiche, elle est automatiquement stockée dans la base de données afin de limiter les appels vers le site d'Icotaku, ce qui signifie que vous afficherez vos  fiches via la base de données.
{% endhint %}

{% hint style="warning" %}
Veuillez ne pas confondre `Id` et `SheetId.` `Id` correspond l'identifiant de la fiche au sein de la base de données tandis que le `SheetId` correspond à l'identifiant de la fiche depuis Icotaku.
{% endhint %}

## Restituer une fiche via son url

Dans l'exemple suivant, vous verrez comment restituer la fiche l'animé **Dr. Stone** via l'url complète de sa fiche (<https://anime.icotaku.com/anime/5633/Dr-STONE.html>).&#x20;

```csharp
//Récupère les informations de l'anime via l'url de la fiche
OperationState<int> animeCreationResult = await Tanime.ScrapFromUrlAsync(new Uri("https://anime.icotaku.com/anime/5633/Dr-STONE.html"));

//Vérifie que l'opération s'est bien déroulée
Console.WriteLine(animeCreationResult.IsSuccess);

//Obtient des informations supplémentaires sur l'opération
Console.WriteLine(animeCreationResult.Message);

//Obtient l'id (SQLite) de l'anime
Console.WriteLine(animeCreationResult.Data);
```

## Restituer une fiche via l'id de sa fiche

Dans l'exemple suivant, vous verrez comment restituer la fiche l'animé **Dr. Stone** via l'Id n°**5633** extrait de l'url de sa fiche : "[https://anime.icotaku.com/anime/**5633**/Dr-STONE.html](https://anime.icotaku.com/anime/5633/Dr-STONE.html)".

```csharp
//Récupère les informations de l'anime précédement "scrappé" via l'url de la fiche
OperationState<int> animeCreationResult = await Tanime.ScrapFromSheetIdAsync(5633);

//Vérifie que l'opération s'est bien déroulée
Console.WriteLine(animeCreationResult.IsSuccess);

//Obtient des informations supplémentaires sur l'opération
Console.WriteLine(animeCreationResult.Message);

//Obtient l'id (SQLite) de l'anime
Console.WriteLine(animeCreationResult.Data);
```

## Restituer une fiche via l'id de son enregistrement

Dans l'exemple suivant, vous verrez comment restituer la fiche l'animé **Dr. Stone** via l'enregistrement n°1 au sein de la base de données.

```csharp
//Récupère les informations de l'anime précédement "scrappé"
Tanime? anime = await Tanime.SingleByIdAsync(1);

if (anime is null)
{
    Console.WriteLine("L'anime n'a pas été trouvé");
    return;
}

//Obtient le nom de l'anime
Console.WriteLine(anime.Name);

//Obtient le nombre d'épisodes
Console.WriteLine(anime.EpisodesCount);

//obtient le synopsis
Console.WriteLine(anime.Description);
```

## Restituer une fiche via le nom de l'animé

Dans l'exemple suivant, vous verrez comment restituer la fiche l'animé **Dr. Stone** via son nom.

{% hint style="warning" %}
Il s'agit d'entrer le nom complet de l'animé comme sur la fiche Icotaku, utliser un nom partiel ou approximitif ne fonctionnera pas. Ultérieurement une méthode sera mise à disposition pour ce cas de figure.
{% endhint %}

```csharp
//Récupère les informations de l'anime précédement "scrappé"
Tanime? anime = await Tanime.SingleAsync("Dr.STONE");

if (anime is null)
{
    Console.WriteLine("L'anime n'a pas été trouvé");
    return;
}

//Obtient le nom de l'anime
Console.WriteLine(anime.Name);

//Obtient le nombre d'épisodes
Console.WriteLine(anime.EpisodesCount);

//obtient le synopsis
Console.WriteLine(anime.Description);
```
