You need to move your optional parameters to the end of the parameter list:
from MSDN:
Optional parameters are defined at the end of the parameter list,
after any required parameters. If the caller provides an argument for
any one of a succession of optional parameters, it must provide
arguments for all preceding optional parameters. Comma-separated gaps
in the argument list are not supported. For example, in the following
code, instance method ExampleMethod is defined with one required and
two optional parameters.
public List GetIndentFilledInfo(
List surveyFeedbacks,
bool hasupdate,
string ddlevent,
string indentType = null)
More Read Here