c# - 在后面的代码中实现析构函数/处置

标签 c# asp.net

我用的是asp net 4.5。

我有 Marker.aspx 页面和页面 Marker.aspx.cs 背后的代码。 每当回发发生时,Page_Load 函数将在代码隐藏中触发并创建 GeoMarkup 类。

   GeoMarkup markupManager;       
   protected void Page_Load(object sender, EventArgs e)
    {
         markupManager = new GeoMarkup("constans",
                                        "mapName",
                                        null);

    } 

每当实现回发时,我都需要触发析构函数并将析构函数放入这一行:

markupManager.Dispose();

我的问题是如何在代码隐藏中实现析构函数?

最佳答案

您的代码隐藏类是 Page 的子类它有一个虚拟的 Dispose 方法。

你应该在你的代码后面覆盖那个方法

public override void Dispose()
{
    if (markupManager != null) {
        markupManager.Dispose();
        markupManager = null;
    }
}

当处理当前 HTTP 请求不再需要类时,HTTP 管道将调用 Dispose。

关于c# - 在后面的代码中实现析构函数/处置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41412203/

相关文章:

c# - DataGridView 有哪些替代方案?

asp.net - 对 asp.net 包请求禁用 session 访问

ASP.NET MVC 4 包给出 404 错误

c# - 如何撤消强类型 View ?

c# - 模板方法设计模式是一个不错的选择吗?

c# - 如何将数据集或数据表行设置为从 gridview 文本框条目中获取的值?

ASP.NET 5 vNext。仅发布 "dist"子文件夹

asp.net - 带有 <httpErrors> 元素的自定义 404 页面似乎在 IIS 7 中不起作用

c# - 如何用 Npgsql 和 PostgreSQL 做一个 out 参数?

c# - 如何使用 iTextSharp 设置 PDF 段落或字体行高?