我们有一个ASP.NET 4.0
网站随机抛出"Object reference not set to an instance of an object"
个例外。这些错误往往发生在spurts中,并且堆栈跟踪始终指向"Temporary ASP.NET Files"
,"App_Web_f0ihyyu5.3.cs"
之一中的第0行。尝试在我们的开发服务器上对其进行故障排除时,我无法重现该问题。
当这些错误开始发生时,清除临时文件似乎会使它们停止数天,然后它们会慢慢开始重新发生。我不确定如何调试此问题。
答案 0 :(得分:1)
我不能告诉你案件中的确切原因,但根据我的经验,这些临时文件似乎有时无法正确更新。
随着每个构建生成新的随机名称,因此有趣的“f0ihyyu5.3”部分名称。我相信当这些文件应该从你的发布/刷新/重新加载中删除时,其中一些文件会在临时文件夹中被“遗留”(无法删除),从而导致页面发生冲突。
对我来说,最好的解决方案是编译成一个程序集。然后,您还将确切知道文件夹中的dll名称。
How to precompile ASP.NET 4.0 to a Single DLL with VS 2010
我知道这不是一个很好的技术答案,但我不止一次地经历过这个。保存自己的痛苦,然后编译成一个单独的dll。