Lambda用于查询表达式的范围

时间:2017-03-03 20:00:32

标签: vb.net linq lambda entity-framework-6 query-expressions

此代码有效:

gErrorHandler.Push("frmItemcodes.cmdRunMethodOne_Click")
If gfHANDEL_ERRORS Then On Error GoTo PROC_ERR

Dim query = KQdbs.Items.Where(Function(f) f.Itemcode > 8000)
Me.dgvItemcodes.DataSource = query.ToList

PROC_EXIT:
    gErrorHandler.Pop()
    Exit Sub

PROC_ERR:
    gErrorHandler.HandleError()
    Resume PROC_EXIT

但如果我将文字8000更改为任何类型的变量,我会收到以下错误:

错误BC36597'On Error GoTo PROC_ERR'无效,因为'PROC_ERR'位于定义lambda或查询表达式中使用的变量的作用域内。

我不知道为什么

如果我将正文中的代码更改为:

Dim query = From item In KQdbs.Items Where item.Itemcode = 8000
Me.dgvItemcodes.DataSource = query.ToList

结果是一样的,文字作品变量返回与上面相同的错误

0 个答案:

没有答案