Controlleurs & Routes
Premier controlleur
Pour créer un controlleur, créez une classe dont le nom finit par "Controller" dans le dossier Controllers
. Par exemple, "HelloWorldController", qui étend la classe Controller
, par exemple :
namespace net_web_tuto_2.Controllers ;
public class HelloWorldController : Controller
{
}
Pour ajouter un préfixe de route à votre controleur, mettez lui l'attribut [Route("maroute")], par exemple :
[Route("hello-world")]
public class HelloWorldController : Controller
{
}
Ensuite, vous pouvez créer une méthode endpoint, avec l'annotation [HttpGet]
:
[HttpGet]
public string HelloWorld()
{
return "Hello world !";
}
La route de ce endpoint est dont GET /hello-world
. On peut constater en lançant l'application avec un :
dotnet run
Et en en allant à https://localhost:7229/hello-world
On peut donner des suites de route particulières aux méthodes endpoint :
[HttpGet("fr")]
public string HelloWorldFr()
{
return "Bonjour, le monde";
}
[HttpGet("en")]
public string HelloWorldEn()
{
return "Hello, world";
}
On peut ensuite constater le résultat en redémarrant l'app (CTRL + C dans la console puis dotnet run
). Et en allant à :
Paramètres de requête et endpoints
Paramètre de requête
Pour récupérer une paramètre de requête, il suffit de mettre un paramètre avec le même nom à la méthode endpoint :
[HttpGet]
public string HelloWorld(string name)
{
return $"Hello, {name}";
}
On peut ensuite constater le résultat en redémarrant l'app (CTRL + C dans la console puis dotnet run
). Et en allant à https://localhost:7229/hello-world?name=Arsène.
Paramètre de chemin
Pour récupérer un paramètre de chemin, il suffit de mettre ce paramètre entre accolades dans la route du endpoint, puis ajouter n paramètre avec le même nom à la méthode endpoint :
[HttpGet("{id}")]
public string HelloWorld(int id)
{
return $"Id : {id}";
}
On peut ensuite constater le résultat en redémarrant l'app (CTRL + C dans la console puis dotnet run
). Et en allant à https://localhost:7229/hello-world/1.
No Comments