我正在使用Grid的第三方库,它使用固定的查询字符串参数,如下所示。
/Home/GetData/?$skip=0&$top=10
这些参数的键中有$
,我想知道是否还有一种方法可以让MVC模型绑定对这些参数起作用。
即。
将它们应用于此操作(由于参数名称中的$,将无法编译。
public ActionResult GetData(int $skip, int $top)
{
...
return View();
}
答案 0 :(得分:1)
感谢Andrei指出我正确的方向。
以下解决方案都可以解决问题。
通过前缀别名模型绑定
public ActionResult GetData([Bind(Prefix = "$top")]int top = 0, [Bind(Prefix = "$skip")]int skip = 0)
{
return View();
}
通过Request对象获取Querystring值
public ActionResult GetData()
{
var topParam = Request.QueryString["$top"];
var skipParam = Request.QueryString["$skip"];
var top = 0;
int.TryParse(topParam, out top);
var skip = 0;
int.TryParse(skipParam, out skip);
return View();
}