【问题标题】:Problems with AnonymousType ASP.NET MVC匿名类型 ASP.NET MVC 的问题
【发布时间】:2015-04-15 07:40:19
【问题描述】:

我收到一个错误,我不知道如何解决,这是我的代码:

var respaldos = db.Respaldoes.Where(x => x.type == "Backup");

if (con_filtro_fecha)
    respaldos = respaldos.Where(x => x.start_time >= _desde && x.start_time <= _hasta);

if (con_agrupacion)
{
    switch (agrupar)
    {
        case "dia":
            respaldos = respaldos.GroupBy(x => new{
                    x.start_time.Year,
                    x.start_time.Month,
                    x.start_time.Day
                })
                .Select(x => new{
                    anio = x.Key.Year,
                    mes = x.Key.Month,
                    dia = x.Key.Day,
                    bytes = x.Sum(y => y.bytes_processed)
                }).AsEnumerable();
            break;
        case "mes":
            respaldos = respaldos.GroupBy(x => new{
                    x.start_time.Year,
                    x.start_time.Month
                })
                .Select(x => new{
                    anio = x.Key.Year,
                    mes = x.Key.Month,
                    bytes = x.Sum(y => y.bytes_processed)
                }).AsEnumerable();
            break;
    }
}

如何解决我在“AsEnumerable()”中遇到的错误? 或者如果这不可能,我能做什么?

错误:

No se puede convertir impícitamente el tipo System.Collections.Generic.IEnumerable AnonymousType#1 en System.Linq.IQueryable RespaldoServidores.Models.Respaldo 。 Ya existe una conversión explícita (compruebe si le falta una conversión)

【问题讨论】:

  • 变量respaldos的声明是什么?
  • var respaldos = db.Respaldoes.Where(x => x.type == "备份");

标签: c# asp.net-mvc entity-framework


【解决方案1】:

当您致电AsEnumerable 时,您会遇到 2 个问题。

首先,respaldos 本来就是一个IQueryable&lt;T&gt;,所以你不能给它分配一个Enumerable&lt;T&gt;

其次,元素类型不同。我不确定respaldos 包含什么类型的元素,但它与您查询中的匿名类型不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-11
    • 1970-01-01
    • 2021-02-27
    • 2011-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多