问题
In an ApiController action I need to close a connection to a database as soon as the action is finished executing.
Under a controller I override OnActionExecuted to accomplish this.
How would I accomplish this under an ApiController action?
Thanks
回答1:
You could override the ExecuteAsync method:
public override Task<HttpResponseMessage> ExecuteAsync(HttpControllerContext controllerContext, CancellationToken cancellationToken)
{
return base
.ExecuteAsync(controllerContext, cancellationToken)
.ContinueWith(t =>
{
// the controller action has finished executing,
// your custom code could come here ...
return t.Result;
});
}
来源:https://stackoverflow.com/questions/17428500/apicontroller-executed-method