代码之家  ›  专栏  ›  技术社区  ›  Rowland Shaw

如何使用看起来不会引发任何异常的MVC应用程序调试情况?

  •  2
  • Rowland Shaw  · 技术社区  · 15 年前

    我们最近在微软的MVC框架(v2)上为我们的内部网开发了一个内部Web应用程序。这似乎非常有效,但在一些尚未可知的事件之后,我们看到了这样一种情况:数据库查询似乎没有产生任何结果,而没有捕获异常,这在一定程度上困扰了我。

    重新发布应用程序不会改变行为,但是重新启动应用程序池将完全恢复功能。

    为了完整起见,我们为MVC应用程序使用专用的应用程序池,并使用SQL身份验证连接到SQL Server,该身份验证在Web服务器出现问题时从其他主机继续工作。似乎没有抛出任何异常(我们没有捕获任何异常,内置的未处理异常魔力也没有捕获任何异常)。在这个实例中,我们不使用linq to sql,而是使用sqlconnection/sqlcommand/stored过程的ado.net方法,我通常希望在它们连接失败或存储过程失败时引发异常。我已经介绍了应用程序,但它没有 出现 泄漏任何资源。

    我想我已经涵盖了所有的角度,但我还应该从哪里着手调查找到问题原因的法医学呢?

    编辑: 我可能应该提到,我们正在使用NTLM身份验证,而像编辑web.config(强制应用程序重新加载)这样的技巧没有效果——我们必须回收整个应用程序池来修复。

    1 回复  |  直到 15 年前
        1
  •  1
  •   Winston Smith    15 年前

    你试过用吗 SQL profiler 在异常期间监控数据库流量?