Suppose the controller method parameter type is int:
Public ActionResult getsth (int ID) { return Content (ID. ToString ()); }
And the view passes over the string:
@Html. ActionLink (" get ","getsth",new {ID ="hello"})
It will then report a mistake similar to the following:
For non-nullable types of method "System.Web.Mvc.ActionResult getsth (Int32)" in "MvcApplication3.Controllers.HomeController" System.Int32 "parameter" id ", the parameter dictionary contains a null item. An optional parameter must be a reference type, a nullable type, or a declaration as an optional parameter.
Parameter name: Parameters
Workaround one: Allow parameters to be null
Public ActionResult getsth (int? ID) { return Content (ID. ToString ()); }
Workaround Two: Assign default values to parameters
public actionresult getsth (int id=< Span style= "COLOR: #800080" >1 ) { return Content (ID. ToString ()); }