[RISOLTO] Linq esagerato

di il
2 risposte

[RISOLTO] Linq esagerato

Ho questa query che funziona bene, nel senso che mi torna i dati che speravo
List<TipoClassificazione> numQuery2 = (from TipoClassificazione in ctx.TipoClassificazione select TipoClassificazione).ToList();
il problema è che TipoClassificazione ha una Fk che è quindi presente nella classe e quando fa quest query in realtà mi restituisce molto di più di quello che mi serviva, perché mi restituisce in pratica una lista degli oggetti che hanno quel tipo di classificazione. Visto che mi serve solo per riempire una dropdownlist, vorrei non fargli fare tutto questo lavoro.

C'è un modo per non fargli riempire tutte le liste figlie?

2 Risposte

  • Re: [RISOLTO] Linq esagerato

    Ho trovato questo.
    var numQuery2 = (from TipoClassificazione in ctx.TipoClassificazione select new { idTipoCespite = TipoClassificazione.idTipoClassificazione, descrizione = TipoClassificazione.descrizione }).ToList();
    Non mi piace molto perché mi costringe a crearmi un model ad hoc, ma soprattutto perché secondo me le query le fa tutte, anche quelle che non vorrei facesse, ma poi fa select solo dei dati che gli richiedo. Sapete se è come dico io?
  • Re: [RISOLTO] Linq esagerato

    Scusate se posto roba troppo presto, senza averci sbattuto abbastanza :S

    Comunque ho trovato la soluzione: basta impostare a false il parametro LazyLoadingEnabled
                var ctx = new Entities();
                ctx.Configuration.LazyLoadingEnabled = false;
Devi accedere o registrarti per scrivere nel forum
2 risposte