如何将DbQuery数据转换为列表<dynamic>?

时间:2018-10-29 12:22:54

标签: c# list entity-framework linq

我是C#和Linq的新手。

实际上,我想将System.Data.Entity.Infrastructure.DbQuery的输出存储到列表中。 Dbquery包含List,String和DateTime。 我尝试使用下面的代码,但给出了错误。 请帮助并告诉我我所缺少的内容或建议如何实现此目标。

错误:

  

System.InvalidCastException:指定的强制转换无效。。

C#代码:

var totalRecords = query.Count();
pager.TotalRecords = totalRecords;

var data = query.Select(x =>
    new
    {
        x.audit.TypeFullName,
        x.audit.UserName,
        x.audit.EventType,
        x.audit.EventDateUTC,
        @LogDetails = x.audit.LogDetails.ToList(),
        x.entaudits.Name,
        @Description = x.entaudits.FullName
    })
    .OrderByDescending(x => x.EventDateUTC)
    .Skip(pager.From)
    .Take(pager.PageSize);
try
{
    var list1 = data.ToList<dynamic>(); //Exception occurs here.
}
catch (Exception ex)
{
}

当我调试代码totalRecords变量时显示计数6,但在此行Specified cast is not valid上显示消息var list1 = data.ToList<dynamic>();的异常

0 个答案:

没有答案