1

我有一个带有大量 Javascript(单页应用程序)的中型 ASP.NET MVC 项目。很多时候(一天几十次),当我编辑 Javascript 文件并刷新它时,我在 VS 的输出中看到它经历了整个 Application_Start 过程(如(重新)启动应用程序)。

这会导致开发过程中出现不必要的延迟,并且在 2-4 次此类重启后,我收到 InvalidOperationException “未在托管服务或 Development Fabric 中运行。”。由于我确实在模拟器中运行它,似乎在几次应用程序重新启动后,它失去了与模拟器的连接。除此之外,我什至得到(虽然非常罕见)OutOfMemoryExceptions,我无法找出它们来自哪里,因为 Web 应用程序中的任何内容都不应分配太多内存,而我的工作站确实有很多(32 GiB)。

它与 IIS (Express) 工作进程的空闲超时无关,因为 JS 更改通常只需要几秒钟。我试图通过在 JS 文件中添加空格并保存它来重现它,重复几次然后尝试刷新。奇怪的是,我无法以这种方式重现它。

我没有想法,非常感谢您的帮助:)

[编辑] 还没有答案,但有可能。似乎 Web Essentials 每次保存它们时都会编译我的 LESS 文件(即使在我特别禁用它之后,因为 ASP.NET Bundling and Minification 已经处理了它),这会导致很多额外的写入,因为我有保存 VERY 的习惯经常。已经联系了开发者,可能是bug。

4

1 回答 1

1

这实际上是由于 IIS 行为造成的。如果其文件结构中的文件发生任何更改,IIS 将回收任何应用程序。

我有类似的经历并在这里详细说明了我的理解:http: //www.geekays.net/post/2008/10/14/ASPNET-webdomain-recycle-on-subfolder-changes.aspx

于 2013-03-25T09:16:48.683 回答