此代码有效:
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
结果是一样的,文字作品变量返回与上面相同的错误