ASP.NET 2.0小应用程序锁定,直到我们运行iisreset ..帮助!

时间:2010-11-01 09:49:54

标签: asp.net iis file locking

我最近开发了一个简单的应用程序,用于根据访问级别向某些用户显示文件列表,并允许他们下载等等。

此应用程序的开发是为了托管在一家拥有大量安全策略的大公司内部,并且具有相当关键的任务性。

该应用程序非常基础,

  • 检查用户NTID(使用Windows身份验证)
  • 将其与SQL
  • 中的表进行比较
  • 然后提取该用户有权访问的所有文件的列表

这就是它..

还有一些表格可以添加用户,编辑用户和上传文件。

我们经常遇到一个问题,即应用程序几乎没有响应。

可以通过打开命令提示符并运行“iisreset”

来解决此问题

我还应该注意,在最初部署应用程序时,我们更改了服务器上的一些设置,以允许连接保持打开一段时间以允许更大的文件上传..

这可能会锁定应用程序吗?

我无法在周末之前重启服务器。

服务器是运行IIS6.0和.NET 2.0的Windows 2003盒

Helllllp!

由于 丹尼尔

3 个答案:

答案 0 :(得分:1)

非常罕见的情况是一个应用程序挂起并且只有iis重新启动才能修复它。

这是无限循环的情况。请检查您的代码

Responce.Redirect(onsamepage);

public string sMyText
{
   get {return sMyText;}
   set {sMyText = value;}
}

protected override void OnLoad(EventArgs e)
{
  base.OnInit(e);
}

答案 1 :(得分:1)

如果应用程序挂起,我建议使用工具捕获内存转储并进行分析。那会给你一个肯定的回答。

试试这个...... http://aspalliance.com/1350_Post_Production_Debugging_for_ASPNET_Applications__Part_1

完成捕获转储后,您可以检查看起来挂起的线程以及它们到底在做什么。

http://blogs.msdn.com/b/tess/

答案 2 :(得分:1)

哈哈..我感觉如此Stoopid!

经过一天早上写入堆栈到日志文件后,我发现了错误..

    try
    {
        //Do Some SQL Stuff Here
        //Close SQL Connection
    }
    catch
    {
        //Whoops it went Bang!
    }

修正了添加:

    finally
    {
       //Close The Connection Doofus!
    }

糟糕!

所以基本上如果在SQL中发生错误,它会直接捕获并永远不会关闭连接!

感谢大家的帮助!