Documentation Index
Fetch the complete documentation index at: https://docs.neuro-tech.io/llms.txt
Use this file to discover all available pages before exploring further.
Controllers and Routes
Build endpoints with controller classes, route attributes, and route templatesStart with a controller
Use[Controller] to make a class discoverable and [Route] to define its base path.
GET /api/usersGET /api/users/meGET /api/users/[userId]
HTTP method attributes
Use one of these on controller methods:[HttpGet("...")][HttpPost("...")][HttpPut("...")][HttpPatch("...")][HttpDelete("...")]
Route template segments
users— literal segment[userId]— named route parameter*— any single segment
How parameter matching works
Route placeholder names are matched against method parameter names case-insensitively.[HttpGet("/[userId]")] can bind to string UserId.
Path matching is case-sensitive; route placeholder name matching is case-insensitive.
Controller lifecycle
The router creates a new controller instance per request:- Request-specific state does not leak between requests
ControllerBase.Contextalways belongs to the current request- Do not access
ControllerBase.Contextin the constructor
When to omit [Route]
If you omit [Route], the controller base path defaults to /. Most real applications are easier to read when each controller owns a clear path prefix.