无法在当前范围或上下文中解析

时间:2012-08-27 04:49:37

标签: c# jqgrid asp.net-mvc-4

  无法在当前范围或上下文中解析

'fieldName'。使   确保所有引用的变量都在范围内,这需要模式   已加载,并且正确引用了名称空间。

当我在控制器中声明_data时,会显示该消息:

string orderBy = sidx + " " + sord;
IQueryable<Table> _data;
_data = entities.Table.OrderBy(orderBy).Skip(skip).Take(take);

任何帮助?

2 个答案:

答案 0 :(得分:3)

感谢您的回答,现在我意识到了......问题是因为我在标头jqgrid中从sidx获得的fieldName参数无法识别表名。然后我尝试这样做,现在它解决了:))

it.添加到订单变量:

string orderBy = "it."+ sidx + " " + sord; IQueryable<Table> _data;
_data = entities.Table.OrderBy(orderBy).Skip(skip).Take(take);

答案 1 :(得分:1)

最可能的原因是您生成的orderBy表达式引用了Table中不可用的字段 - 只需在此行中设置断点并检查它具有的值。

这里有一个重要的事情是,在jqGrid的情况下(你用jqGrid标记了你的问题),发送的内容与sidx有一些不一致。大部分时间是来自index的{​​{1}},但有时(例如,启用分组时)它可以是colModel