默认参数(又译作“缺省参数”),是C#4.0引入的特性,它的作用是给方法定义某个参数的时候给参数指定一个默认值
例如这样的场景,请求页面数据的时候,我们往往会做分页,入参包含页码(pageIndex)和每页显示数据量(pageSize)两个参数
public List<ModelResponse>GetPageList(int param,string userNo,int pageIndex,int pageSize=10)
{
......
}
我们给pageSize指定默认值10,那么调用这个方法时,就可以少传一个参数
public JsonResult GetList(int param,string userNo,int pageIndex)=>return Json(bll.GetPageList(param,userNo,pageIndex),JsonRequestBehavior.AllowGet);
如果多个页面调用此方法(废话,如果不是多页地方调用就不需要这个参数了),其中一个要每页展示15条,只需要在调用时多加一个参数:
public JsonResult GetList(int param,string userNo,int pageIndex)=>return Json(bll.GetPageList(param,userNo,pageIndex,15),JsonRequestBehavior.AllowGet);
限制:
1,缺省参数的声明只能放在普通参数之后
2,指定的缺省值必须是一个常量 ,即只能是系统定义的基本元素类型,如DateTime.Now不是常量,这样的代码不能通过编译(Default parameter value for 'date' must be a compile-time constant)