Для привязки CancellationToken к контроллерам в ASP.NET Core можно использовать параметр CancellationToken в методе действия контроллера.
Вот пример кода, который объяснит, как привязать CancellationToken к методам контроллера:
```csharp
[HttpPost]
public async Task<IActionResult> EditEmployeeAttestation(int id, CancellationToken cancellationToken)
{
//...
await _employeesService.EditEmployeeAttestation(id, cancellationToken);
//...
return Ok();
}
```
В данном примере параметр `cancellationToken` будет автоматически привязан к токену отмены текущего HTTP-запроса.
Когда вы добавляете асинхронность в метод `_employeesService.EditEmployeeAttestation`, вы можете использовать `cancellationToken` для передачи его дальше по цепочке вызовов:
```csharp
public async Task EditEmployeeAttestation(int id, CancellationToken cancellationToken)
{
//...
await SomeAsyncOperation(cancellationToken);
//...
}
```
Если запрос будет отменен, то токен отмены будет прокинут во все вызываемые методы, которые его поддерживают. Если `SomeAsyncOperation` поддерживает отмену с помощью CancellationToken, то оно будет отменено, когда токен отмены будет отменен.
Таким образом, при добавлении async/await с передачей CancellationToken, значение токена будет прокинуто во все вызываемые методы, которые его поддерживают.