c# – 如果你不处理HttpContext.Current.Items怎么办?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 如果你不处理HttpContext.Current.Items怎么办?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1033字,纯文字阅读大概需要2分钟。
内容图文
![c# – 如果你不处理HttpContext.Current.Items怎么办?](/upload/InfoBanner/zyjiaocheng/768/52d8494468494b618ad51b03ee0ea901.jpg)
我正在使用HttpContext.Current.Items根据登录用户设置租户.为此,我使用以下代码:
protected virtual void Application_BeginRequest()
{
HttpContext.Current.Items["_CurrentTenant"] = Tenant.GetCurrent();
}
protected virtual void Application_EndRequest()
{
var currentTenant = HttpContext.Current.Items["_CurrentTenant"] as Tenant;
if (currentTenant != null)
currentTenant.Dispose();
}
由于HttpContext.Current.Items只存在于当前请求中,我希望在请求完成后将其销毁.此外,CurrentTenant对象是完全托管的对象.
因此,是否需要在EndRequest中处置?如果你不那样做会怎么样?
解决方法:
Therefore, is it required to dispose in the EndRequest?
只有您可以知道,在请求结束时处置对象是否是您想要的.确保在不再使用时处理掉.如果那是在请求的最后,那么这可能是一个好地方.
What happens if you don’t do that?
不会调用.Dispose()方法.这对你的特定课程意味着什么只是你可以说的.正常模式会在终结器中调用.Dispose(),但在此之前,它可能需要一段时间.在那段时间发生的事情完全取决于为什么它首先被标记为IDisposible.也许文件没有关闭,连接可能保持打开,句柄可能不会被返回…只有你可以知道它是否是你的类.
内容总结
以上是互联网集市为您收集整理的c# – 如果你不处理HttpContext.Current.Items怎么办?全部内容,希望文章能够帮你解决c# – 如果你不处理HttpContext.Current.Items怎么办?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。