Bonjour

Je m'adresse à vous car je ne sais comment poser ma question sur google.

Quelqu'un y a déjà surement répondu mais ne sachant ou chercher ...

Je vous explique, je suis extrêmement débutant en c# asp.net web api, je développe une application de location de gîtes

Je commence alors par me créer un contrôleur qui me retourne une liste de gîtes,

seulement le problème est que lors de la réception de ma liste, j'ai des données dont je ne veux pas ! ( dû à des foreign keys de ma base de données j'imagine. )

voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public List<Gite> GetGite()
        {
            return db.Gite.ToList();
        }
et le résultat

Nom : 2018-12-28_19-29-30.jpg
Affichages : 104
Taille : 58,1 Ko

donc le truc c'est qu'il me donne les indisponibilités / périodes /photos du gîte, ça c'est bon j'en ai besoin

Mais il me donne aussi les réservations à la quelle ce gîte est lié , et donc il me donne aussi le membre qui est lié à la réservation , le statut qui est lié à la réservation ect...
Et ça je n'en veux pas du tout

Comment est ce que je peux faire pour qu'il ne m'affiche pas ces données ?

J'ai cru comprendre qu'il y a du lazy loading dans l'histoire, seulement je ne veux pas le désactiver car j'ai besoin des informations telle que indisponibilités / périodes / photos

Merci de votre aide

PS: Je précise que j'ai trouver ça https://docs.microsoft.com/en-us/asp...amework/part-4, mais quand ils parlent de lazy loading ils disent que le fait de faire .ToList() ne devraient pas inclure Auteur,ne fonctionne pas chez moi, il l'inclut quand même


EDIT: Est ce que cela aurait avoir avec ces 2 lignes que j'ai mis dans mon glabal.asax ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
GlobalConfiguration.Configuration.Formatters.Remove(GlobalConfiguration.Configuration.Formatters.XmlFormatter);