Tengo curiosidad por saber por qué el ApiController maneja los valores de parámetros predeterminados en las acciones de forma diferente a un controlador "regular".Valor de parámetro predeterminado en MVC 4 Web API
Este código funciona bien, petición a/medios de prueba página obtiene el valor 1
public class TestController : Controller
{
public ActionResult Index(int page = 1)
{
return View(page);
}
}
Este código no funciona cuando se hace una petición a/API/valores. Falla con:
"El diccionario de parámetros contiene una entrada nula para el parámetro 'página' de tipo no nulo 'System.Int32' para el método 'System.Collections.Generic.IEnumerable`1 [System.String] Get (Int32) 'en' MvcApplication1.Controllers.Controllers.ValuesController '. Un parámetro opcional debe ser un tipo de referencia, un tipo anulable o ser declarado como un parámetro opcional. "
public class ValuesController : ApiController
{
public IEnumerable<string> Get(int page = 1)
{
return new string[] { page.ToString() };
}
}
¿Alguna pista sobre qué es esto?
Gracias, leerán estas publicaciones del blog, con suerte eso aclarará las cosas. –
Parece que es [FromUri] hoy en día! – Olaj