【问题标题】:Code deleted but still outputting代码已删除但仍在输出
【发布时间】:2012-08-19 14:02:35
【问题描述】:

我从我的 Codebehind .aspx.cs 页面中删除了几个函数。然而,网页仍然在调用这些函数,即使我没有调用它们,也没有实际存在的函数。

代码的工作方式与删除之前完全一样...我不知道发生了什么。

我尝试过的事情:

  • 使用不同的计算机和浏览器导航到页面。
  • 重新启动 IIS 服务
  • 为网站重新启动 IIS 应用程序池
  • 在整个项目中搜索正在调用的代码
  • 使用以下代码清理 ASP.NET 缓存:

public void ClearApplicationCache()
{
    List<string> keys = new List<string>();

    // retrieve application Cache enumerator
    System.Collections.IDictionaryEnumerator enumerator = Cache.GetEnumerator();

    // copy all keys that currently exist in Cache
    while (enumerator.MoveNext())
    {
        keys.Add(enumerator.Key.ToString());
    }

    // delete every key from cache
    for (int i = 0; i < keys.Count; i++)
    {
        Cache.Remove(keys[i]);
    }
}

环境

  • ASP.NET 2.0
  • IIS 6
  • Windows Server 2003
  • XP / 7 浏览 (Chrome/IE)

代码是否缓存在某处?我被弄得一头雾水。

【问题讨论】:

  • 这里有一个线索:这是 ASP.NET,而不是 ASP Classic。

标签: c# asp.net caching


【解决方案1】:

为了使更改生效,您必须重新编译代码并重新部署。看起来你没有替换 DLL。

您可以在此处阅读更多信息:

Web Application Projects versus Web Site Projects - 参见编译部分。

【讨论】:

  • 这似乎超出了我的理解范围。我在 Visual Studio 中打开了项目,但没有“编译”选项?假设这是一个网站而不是一个网络应用程序?
  • 当我说编译时,我的意思是 Build 项目。生成的产品(DLL)通常放在 bin 文件夹中。这些是您必须在服务器上复制和粘贴的文件。
  • 谢谢@Leniel Macaferi 我会尝试构建并通知您结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-06-04
  • 1970-01-01
  • 2020-01-05
  • 1970-01-01
  • 2021-03-31
  • 2011-07-02
相关资源
最近更新 更多