none
Não consigo fazer o LIST<> retornar registros. RRS feed

  • Pergunta

  • Colegas , boa noite.

     Não  consigo fazer o List<>  retornar registros.

    Abre a conexão corretamente,  faz o select  mas, o resultado e count=0

    peço ajuda.  

    abaixo regue as rotinas

    ===============================================

             

     public PartialViewResult PesquisarGuia(string pesquisa)
            {
                var ret = new List<tb_guiaembalagem_campanha>();


                var Lista = ret.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();


                return PartialView("pvGrid", Lista);
            }

    =============================================================

     public class Contexto:DbContext
        {

             //public Contexto()
            //    : base("name=ConexaoSQL")
            //{ }

            public DbSet<tb_guiaembalagem_campanha> GuiaembalagemCampanha { get; set; }


            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                // Caso nao exista o banco de dados ele cria //
                Database.SetInitializer<Contexto>(new CreateDatabaseIfNotExists<Contexto>());
            }
        }

    ======================================================

    {SELECT 
    [Extent1].[Id] AS [Id], 
    [Extent1].[Ds_Material] AS [Ds_Material], 
    [Extent1].[Cd_Material] AS [Cd_Material], 
    [Extent1].[Cd_Linha] AS [Cd_Linha], 
    [Extent1].[Dt_Data] AS [Dt_Data], 
    [Extent1].[Dt_Cad] AS [Dt_Cad], 
    [Extent1].[Ic_Ativo] AS [Ic_Ativo], 
    [Extent1].[Nr_Palete] AS [Nr_Palete], 
    [Extent1].[Ds_Ordem_Producao] AS [Ds_Ordem_Producao]
    FROM [dbo].[tb_guiaembalagem_campanha] AS [Extent1]}

    Essa query   processada no banco retorna os registros..

    Obrigado

    sexta-feira, 17 de junho de 2016 01:30

Respostas

  • Olá Antonio,

    Se mudar o código da seguinte forma vai funcionar:

    var ret = new List<tb_guiaembalagem_campanha>();
    
    ret = db.GuiaembalagemCampanha.ToList();
    
    var Lista = ret.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();
    
    
                return PartialView("pvGrid", Lista);

    ou

    var Lista = db.GuiaembalagemCampanha.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();
    
    
                return PartialView("pvGrid", Lista);


    sexta-feira, 17 de junho de 2016 11:39

Todas as Respostas

  • Colegas , boa noite.

     Não  consigo fazer o List<>  retornar registros.

    Abre a conexão corretamente,  faz o select  mas, o resultado e count=0

    peço ajuda.  

    abaixo regue as rotinas

    ===============================================

                             

               public class GuiaembalagemCampanhaController :Controller
        {
            private Contexto db = new Contexto();

            //
            // GET: /Treinamento/GuiaembalagemCampanha/

            public ActionResult Index()
            {
                return View();
            }


            public PartialViewResult PesquisarGuia(string pesquisa)
            {
                var ret = new List<tb_guiaembalagem_campanha>();


                var Lista = ret.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();


                return PartialView("pvGrid", Lista);
            }

    .......

    =============================================================

     public class Contexto:DbContext
        {

            public Contexto()
                : base("name=ConexaoSQL")
            { }

            public DbSet<tb_guiaembalagem_campanha> GuiaembalagemCampanha { get; set; }


            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                // Caso nao exista o banco de dados ele cria //
                Database.SetInitializer<Contexto>(new CreateDatabaseIfNotExists<Contexto>());
            }
        }

    ======================================================

    {SELECT 
    [Extent1].[Id] AS [Id], 
    [Extent1].[Ds_Material] AS [Ds_Material], 
    [Extent1].[Cd_Material] AS [Cd_Material], 
    [Extent1].[Cd_Linha] AS [Cd_Linha], 
    [Extent1].[Dt_Data] AS [Dt_Data], 
    [Extent1].[Dt_Cad] AS [Dt_Cad], 
    [Extent1].[Ic_Ativo] AS [Ic_Ativo], 
    [Extent1].[Nr_Palete] AS [Nr_Palete], 
    [Extent1].[Ds_Ordem_Producao] AS [Ds_Ordem_Producao]
    FROM [dbo].[tb_guiaembalagem_campanha] AS [Extent1]}

    Essa query   processada no banco retorna os registros..

    Obrigado



    sexta-feira, 17 de junho de 2016 01:31
  • Para fazer a "prova dos 9", no caso a query equivalente, você precisa usar os mesmos critérios. No seu caso, você está pesquisando embalagens, em que o material contenha o que quer esteja na variável "pesquisa". Então inclua esse mesmo critério na query de "prova".
    sexta-feira, 17 de junho de 2016 07:22
  • Olá Antonio,

    Se mudar o código da seguinte forma vai funcionar:

    var ret = new List<tb_guiaembalagem_campanha>();
    
    ret = db.GuiaembalagemCampanha.ToList();
    
    var Lista = ret.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();
    
    
                return PartialView("pvGrid", Lista);

    ou

    var Lista = db.GuiaembalagemCampanha.FindAll(x => x.Ds_Material.ToLower().Contains(pesquisa.ToLower()) || x.Cd_Material.ToLower().Contains(pesquisa.ToLower()));
                Lista = Lista.OrderBy(x => x.Ds_Material).ToList();
    
    
                return PartialView("pvGrid", Lista);


    sexta-feira, 17 de junho de 2016 11:39
  • Boa tarde Pablo,

    Perfeito,  show.

    Muito obrigado.


     

    sexta-feira, 17 de junho de 2016 19:58