我在收到响应之前发送请求时使用请求
响应,Masstransit
请求被取消 并抛出此异常Asp.NetCore
System.Threading.Tasks.TaskCanceledException: A task was canceled.
我已经下载masstransit
了代码并用它调试了我的项目。我了解ClientRequestHandle
在收到我的回复之前处理和取消请求。
我检查了消费者端,它成功运行并按预期发送响应。
我在收到响应之前发送请求时使用请求
响应,Masstransit
请求被取消 并抛出此异常Asp.NetCore
System.Threading.Tasks.TaskCanceledException: A task was canceled.
我已经下载masstransit
了代码并用它调试了我的项目。我了解ClientRequestHandle
在收到我的回复之前处理和取消请求。
我检查了消费者端,它成功运行并按预期发送响应。
使用 时RequestHandle<T>
,需要保持对句柄的引用,直到请求完成并收到响应(或发生超时或故障)。
您可以通过使用单行方法来简化此操作,例如:
var response = await requestClient.GetResponse<T>(request);
如果您需要向请求中添加内容,例如标头等,那么您需要保留句柄直到完成。
using(var handle = requestClient.Create(request))
{
var response = await handle.GetResponse<T>();
}