none
ReportViewer com EF (C# Win Forms) RRS feed

  • Pergunta

  • Olá PessoALL...

    Estou tendo problema em desenvolver um relatório utilizando o ReportViewer e minhas classes do contexto do Entity Framework.

    Mesmo utilizando o wizard não funciona.

    Ocorre que os dados simplesmente não aparecem.

    Desde já agradeço as colaborações


    Wenderson Sampaio
    • Movido AndreAlvesLimaModerator segunda-feira, 9 de janeiro de 2012 10:44 (De:.NET Framework - ADO (Acesso a dados, data access & storage))
    sexta-feira, 6 de janeiro de 2012 19:11

Respostas

Todas as Respostas

  • Prezado(a),
    Estou migrando seu post para o fórum de Geração de Relatórios.
    Por favor, das próximas vezes que tiver alguma dúvida relacionada a esse assunto, poste por lá.
    Obrigado.

    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 9 de janeiro de 2012 10:44
    Moderador
  • Olá Wenderson,

     

    Bom, criei um post sobre a renderização de relatórios Report Viewer com Linq, porém o mesmo é voltado para aplicações Web com ASP.NET MVC!

    Você consegue renderizar seu relatório com Linq muito facilmente, veja alguns artigos que provavelmente irá suprir suas dúvidas:

     

     

    http://rafaelzaccanini.net/category/report-viewer-crytal-reports/

     

    Qualquer dúvida entre em contato.

     

    Abs,

     

     

    Rafael Zaccanini

    MTAC - Microsoft Technical Audience Contributor

    www.rafaelzaccanini.net

     

     


    segunda-feira, 9 de janeiro de 2012 13:00
  • Olá Rafael,

     

    Li seu post e tentei implementar para Windows Forms mas, não consegui. Acontece que os dados não são apresentados no formulário...

    Se tiver alguma dica eu agradeço,

     

    Wenderson Sampaio

     


    Wenderson Sampaio
    terça-feira, 10 de janeiro de 2012 17:07
  • Olá Wenderson,

     

    Como você fez ? algum erro é gerado ? Se possível coloque alguma parte de seu código que esteja com problema!

     

    abs.

     

    Rafael Zaccanini

    MTAC - Microsoft Technical Audience Contributor

    www.rafaelzaccanini.net

    terça-feira, 10 de janeiro de 2012 20:29
  • Olá Rafael,

    Valeu pela ajuda...

    A quem possa interessar, fica registrado aqui como consegui utilizar o Contexto (E.F) para os Relatórios:

    No Relatório RDLC (nome: listaPessoaReport) foi definido um DataSet (nome: PessoaDts) baseado na Entidade Pessoa. Então...

    ... na Camada DAO eu já tinha a Classe que contém os métodos de acesso ao contexto.    

     

            public List<TipoPessoa> ObterTodosRegistros()
            {
                //Instância do Contexto
                EDMSistemaContainer db = new EDMSistemaContainer();
    
                //Consulta ao Contexto
                IQueryable<Pessoa> todosRegistros = db.PessoaSet.AsQueryable<Pessoa>();
    
                return todosRegistros.ToList();
            }
    

    ... no Formulário que contém um ReportViewer (nome: listaPessoaReporViewer) que tem como relatório o listaPessoaReport...

    ... foi criado uma função que "limpa" o ReportViewer e determina o DataSource...

     

            private void carregaRelatorio()
            {
                //Instância da Classe citada acima...
                PessoaDAO daoPessoa = new TipoPessoaDAO();
    
                //Passa a query para a variável datasource
                var listaPessoa = daoPessoa.ObterTodosObj();
    
                //Limpa o DataSource...
                listaTipoPessoaReportViewer.LocalReport.DataSources.Clear();
    
                //Define um novo DataSource e passa para o Reportviewer e seu Relatório...
    //... observando que o nome do DataSet do Relatório foi passado...
     ReportDataSource datasource = new ReportDataSource("PessoaDts", listaPessoa); listaPessoaReporViewer.LocalReport.DataSources.Add(datasource); this.listaPessoaReporViewer.RefreshReport(); }
    ... pronto!... Agora é só chamar a função carregaRelatorio() no evento Load do Formulário ou como preferir.

     



    Wenderson Sampaio


    quinta-feira, 12 de janeiro de 2012 19:22