相关疑难解决方法(0)

表达式不能包含lambda表达式

我已经获取了List<>下面的对象(with .Include()):

List<vDetail> entityvDetails =
    context.vDetails
    .Include("payInstallment.appsDetail")
    .Include("payInstallment.appsDetail.application")
    .Include("payInstallment.appsDetail.purposes")
    .Where(e => e.vch_id == 123).ToList();
Run Code Online (Sandbox Code Playgroud)

然后在前面的代码中的某处我尝试过滤实体记录,如下所示:

foreach (vDetail item in lstVDetails)
{
    ... 

    int purposeId = entityvDetails.Where(e => e.sad_id == item.sad_id).FirstOrDefault().payInstallment.appsDetail.purposes.prp_id;

    ...
}
Run Code Online (Sandbox Code Playgroud)

代码编译完美.但是,运行时返回跟随错误(尽管包括所有导航):

Object reference not set to an instance of an object.
Run Code Online (Sandbox Code Playgroud)

所以我设置使用监视窗口进行调试.现在在观察窗口中分析以下语句时:

entityVoucherDetails.Where(e => e.sad_id == item.sad_id).FirstOrDefault()
Run Code Online (Sandbox Code Playgroud)

监视窗口生成以下错误:

表达式不能包含lambda表达式.

如果有人能告诉我可能是什么原因?

c# linq lambda entity-framework entity-framework-4

32
推荐指数
1
解决办法
5万
查看次数

标签 统计

c# ×1

entity-framework ×1

entity-framework-4 ×1

lambda ×1

linq ×1