Originariamente inviata da
Kahm
Ciao Kahm,
se non ho capito male ti interessa aggiungere action.
puoi impostare la action nella routeTemplate ed aggiungere metodi nel controller (segui i colori delle sottolineature per capire come chiamarle):
codice:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
codice:
public class CentriController : ApiController
{
// GET: api/Centri/GetAllCenters
[HttpGet]
public IEnumerable<Centri> GetAllCenters()
{
....
}
// GET: api/Centri/Qualcosa
[HttpGet]
public IEnumerable<Centri> Qualcosa()
{
....
}
// GET: api/Centri/Altro?ID=0
[HttpGet]
public int Altro(int ID)
{
return ID;
}
// GET: api/Centri/Centro?nome=u235
[HttpGet]
public string Centro(string nome)
{
return nome;
}
}
come lo hai impostato hai una sola action, quindi quella è l'unica che può essere chiamata quando chiami il controller.
Ovviamente se hai più action devi specificare il nome.