【问题标题】:Reports VS 2010, drill down ICollection报告 VS 2010,向下钻取 ICollection
【发布时间】:2012-03-14 06:22:30
【问题描述】:

我有以下 Linq,它链接到报告。

恢复它是账单报告,但账单有多个产品,所以我有一个 ICollectionProducts。我们的想法是使用向下钻取在单个报告中显示每个帐单及其多个 Products(尽量避免子报告)。

public class BillsDataSet
{
    public int IDGestion { get; set; }
    public string Comentario { get; set; }
    public ICollection<BillProduct> Products { get; set; }
    public decimal Monto { get; set; }
    public string Personal { get; set; }

    public static List<BillsDataSet> BillsPorFecha(DateTime dtFechaInicial, DateTime dtFechaFinal)
    {
        Context db = new Context();

        List<BillsDataSet> BillsDataSet = (from p in db.Bill
                                               select new BillsDataSet()
                                               {
                                                   IDGestion = p.IDBill,
                                                   Comentario = p.Historial.FirstOrDefault().Comentario,
                                                   Products = p.BillProduct,
                                                   Monto = p.Total,
                                                   Personal = p.Historial.FirstOrDefault().CodigoEmpleado
                                               }).ToList();
        return BillsDataSet;
    }
}

我在网页报告中收到此错误...

我想要实现的是深入了解Products 以隐藏/显示与账单相关的所有Products...

【问题讨论】:

标签: c# visual-studio-2010 linq asp.net-mvc-3 reporting


【解决方案1】:

试试下面的

public static List<BillsDataSet> BillsPorFecha(DateTime dtFechaInicial, DateTime dtFechaFinal)
{
    Context db = new Context();

    List<BillsDataSet> BillsDataSet = (from p in db.Bill
                                           select new BillsDataSet()
                                           {
                                               IDGestion = p.IDBill,
                                               Comentario = p.Historial.FirstOrDefault().Comentario,
                                               Products = (from b in db.BillProduct where b.product_id == p.IDBill select new BillProduct()).ToList() as ICollection<BillProduct>,
                                               Monto = p.Total,
                                               Personal = p.Historial.FirstOrDefault().CodigoEmpleado
                                           }).ToList();
    return BillsDataSet;

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-14
    相关资源
    最近更新 更多