Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [C#] Problema estrazione dati Linq to Entities

    Ciao a tutti.
    Ho un problema abbastanza urgente con Linq to Entities.

    Dovrei estrarre da una tabella tutti i comuni con un'iniziale data, ma purtroppo continua a restituirmi insieme vuoto.

    Ecco cosa utilizzo:

    codice:
            public static List<COMUNI> GetLista (string iniziale)
            {
                using (var entities = new AgriEntities())
                {
                    var lista =
                        ( from ist in entities.COMUNI
                          where ist.Nome.Substring(0,1) == iniziale
                          orderby ist.Nome
                          select ist ).ToList();
    
                    return lista;
                }
            }
    Ditemi dove sbaglio, per favore!

    Ho provato a togliere la condizione where per vedere se mi restituiva qualcosa, e in effetti mi restituisce tutti i record.
    Ho provato anche ad usare il metodo StartWith (iniziale) ma niente!

    Grazie a tutti!

  2. #2
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764
    codice:
    public static List<COMUNI> GetLista (string iniziale)
            {
                using (var entities = new AgriEntities())
                {
                    var lista =
                        ( from ist in entities.COMUNI
                          orderby ist.Nome
                          select ist ).ToList();
    
                    return lista.Where(c => c.Nome.Substring(0,1).Equals(iniziale));
                }
            }
    In questo modo la where la fai fare a linq to object e non a EF.
    Se cosi funge (non ho fatto esperimenti) allora il problema è come EF traduce la query verso il database che non è sempre ciò che noi ci aspettiamo.
    A questo punto tocca a te decidere se lasciare le cose cosi (magari l'intera lista non è poi cosi grande) oppure trovare un workaround per forzare EF a fare la query giusta.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.