我在C# V.4
函数中有一个非常简单的函数page
是一个可选参数,即我通常会调用mysite.com/product/PaginationOfProducts/20
但是对于某些页面控件,我必须调用mysite.com/product/PaginationOfProducts/20?page=2
但在构建我的解决方案时,我收到optional parameters must appear after all required parameters
public ActionResult PaginationOfProducts(int id = 0, int ? page)
{
// do something
}
我不明白VS如何决定page
不是我的可选参数,即使我将其定义为null-able int
答案 0 :(得分:2)
您需要为页面提供默认值
public ActionResult PaginationOfProducts(int id = 0, int? page = null)
{
// do something
}
答案 1 :(得分:0)
很简单,错误说明了一切。 将方法签名更改为
public ActionResult PaginationOfProducts( int? page, int id = 0)
因此,请确保在所需参数后面显示可选参数。 页面不是可选参数,因为它没有(显式)默认值,因此您不能省略它。
您还可以将方法签名更改为
public ActionResult PaginationOfProducts( int id = 0, int? page = null)
通过这样做,page参数也是一个可选参数。