实体框架中的Linq查询错误

斋户

我正在尝试通过EF linq查询从域对象中收集值。但是我遇到了一个错误,请您帮我改正。

public String[] ReturnPatientIDs(int CounsellingRoomID)
{

    var messageObject = this.context.CounsellingMessages.Where(c => c.CounsellingRoomID == CounsellingRoomID).Distinct();

    String[] PatientIDs = new String[messageObject.Count()];

    for (int k = 0; k < PatientIDs.Length; k++)
    {
        PatientIDs[k] = messageObject.ElementAt(k).Chatname;
    }

    return PatientIDs;
}

LINQ to Entities无法识别方法'Me.Domain.General.CounsellingMessage ElementAt [CounsellingMessage](System.Linq.IQueryable`1 [Me.Domain.General.CounsellingMessage],Int32)'方法,并且该方法无法转换为商店表达。

说明:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中起源的更多信息。

异常详细信息:System.NotSupportedException:LINQ to Entities无法识别方法“ MedicalApp.Domain.General.CounsellingMessage ElementAt [CounsellingMessage](System.Linq.IQueryable`1 [MedicalApp.Domain.General.CounsellingMessage],Int32)”方法,并且此方法不能转换为商店表达式。

源错误:

Line 43:             for (int k = 0; k < PatientIDs.Length; k++ )
Line 44:             {
Line 45:                 PatientIDs[k] = messageObject.ElementAt(k).Chatname;
Line 46:             }
Line 47: 
艾哈迈德·法格

ElementAt不支持方法。messageObject不执行查询,直到你打电话Count(),并ElementAt()在其上,而那些被视为对LINQ实体的查询。

for通过添加以下Select语句,可以将循环中执行的操作纳入您的LINQ查询中

public String[] ReturnPatientIDs(int CounsellingRoomID)
{
    var query = this.context.CounsellingMessages
                    .Where(c => c.CounsellingRoomID == CounsellingRoomID)
                    .Select(c => c.Chatname)
                    .Distinct();

    return query.ToArray();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

实体框架:在LINQ查询中更新

来自分类Dev

实体框架Linq查询中的日期比较

来自分类Dev

使用 Linq 在实体框架中查询嵌套/相关实体

来自分类Dev

实体框架中的可查询Linq查询差异

来自分类Dev

使实体框架Linq查询异步

来自分类Dev

实体框架中LINQ查询中AsNoTracking的范围

来自分类Dev

PostSharp方面:访问实体框架LINQ查询中的“注入”属性

来自分类Dev

从实体框架LINQ查询中获取错误“ Delegate'System.Func <EntityType,int,bool>不接受1个参数”

来自分类Dev

实体框架中的用户定义表生成了错误的查询

来自分类Dev

在实体框架ASP.NET MVC中的LINQ到实体中构造查询

来自分类Dev

实体框架DbContext在查询中

来自分类Dev

从SQL到LINQ的子查询实体框架

来自分类Dev

带子项的Linq查询(实体框架)

来自分类Dev

使用实体框架优化LINQ查询

来自分类Dev

Linq使效率很低的实体框架查询

来自分类Dev

实体框架我无法创建linq查询

来自分类Dev

从SQL到LINQ的子查询实体框架

来自分类Dev

使用实体框架优化LINQ查询

来自分类Dev

带有实体框架查询的复杂linq

来自分类Dev

C# 实体框架和 Linq 查询

来自分类Dev

带有linq查询和存储的表达式错误的实体框架

来自分类Dev

带有linq查询和存储的表达式错误的实体框架

来自分类Dev

实体框架linq空值错误

来自分类Dev

实体框架中的ForeignKey错误

来自分类Dev

传递实体框架查询以查看错误

来自分类Dev

使用linq和相关实体查询实体框架7

来自分类Dev

LINQ查询中实体的GetType

来自分类Dev

LINQ查询中实体的GetType

来自分类Dev

在linq中查询实体的ICollection到实体