gpt4 book ai didi

asp.net - ASP.NET Web API 请求完成后如何处置资源?

转载 作者:行者123 更新时间:2023-12-02 15:30:06 24 4
gpt4 key购买 nike

我正在尝试揭露 IQueryable<>通过 ASP.NET Web API,我发现我需要保持数据源打开直到请求完成,以便 ASP.NET Web API 中内置的 OData 查询系统可以完成其工作。

好吧,这听起来非常合理。但是我应该在哪里处理数据源呢?我没有看到任何明显的地方可以这样做。我应该管理应用程序中的请求状态吗?执行此操作的标准方法是什么?

Dispose() Controller 的方法合适的地方? IE。是否可以保证一个 Controller 实例仅服务一个请求,或者这只是一个实现细节?

我正在使用 ASP.NET MVC 4 RC 中的 ASP.NET Web API。

最佳答案

您可以使用名为 RegisterForDispose 的扩展程序在 HttpRequestMessage 上注册您想要在请求完成时释放的任何资源。

顺便说一句,您可能需要查看以下链接,了解下一版本 Web API 中的 IQueryable 支持。 http://aspnetwebstack.codeplex.com/discussions/359229

[已编辑] 在 Controller 的 Dispose() 方法中执行操作也是一种解决方案。在 Web API 中,基于 ApiController 的 Controller 始终是针对每个实例的(每个请求一个 Controller 实例)

关于asp.net - ASP.NET Web API 请求完成后如何处置资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11361912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com