ReportViewer does not display object value?

0

I am trying to generate a report with ReportViewer on the items in a sale, the report is displayed but in the product column the #Erro appears instead of the product. My classes are all with [Serializable] but it still is not working and returns the warning: Warning: A expressão Value para textrun ‘produto.Paragraphs[0].TextRuns[0]’ contém um erro: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed. (rsRuntimeErrorInExpression) .

The strangest thing is that if I give a foreach in the list before generating the report the information is displayed in Console and tbm in the ReportViewer correctly. But passing the list directly without foreach does not work.

How do I solve this problem?

Reporting.

private void geraRelContasReceberDetalhado() {
            foreach (ItemVenda iv in this.listaItens) {
                Console.WriteLine("produto: " + iv.produto.descricao);
            }
            reportViewer.Reset();
            reportViewer.LocalReport.ReportPath = @"..\..\reports\RelContasReceberDetalhado.rdlc";
            ReportDataSource rds = new ReportDataSource("DataSetRelContasReceberDetalhado", this.listaItens);
            //List<ReportParameter> listParams = new List<ReportParameter>();                
            // rv.LocalReport.SetParameters(listParams);
            reportViewer.LocalReport.DataSources.Add(rds);
        }

Classes

//ItemVenda
[Serializable]
    public class ItemVenda {

        public virtual long id                      { set; get; }
        public virtual Venda venda                  { set; get; }
        public virtual Produto produto              { set; get; }
        public virtual decimal valorUn              { set; get; }
        public virtual int quantidade               { set; get; }
        public virtual decimal total                { set; get; }

        public ItemVenda() {            
        }
    }


[Serializable]
    public class Produto {

        public virtual long id                              { set; get; }        
        public virtual string descricao                     { set; get; }
        public virtual CategoriaProduto categoriaProduto    { set; get; }
        public virtual UnidadeProduto unidadeProduto        { set; get; }
        public virtual decimal valorCusto                   { set; get; }
        public virtual decimal valorVenda                   { set; get; }
        public virtual int qtdEstoque                       { set; get; }
        public virtual int estoqueMin                       { set; get; }
        public virtual int estoqueMax                       { set; get; }
        public virtual int status                           { set; get; }
        public virtual string imagem                        { set; get; }

        public Produto() {            
        }

        public override string ToString() {
            return descricao;
        }

    }

Print the report.

    
asked by anonymous 24.09.2016 / 16:33

0 answers