我们在自己的服务器上安装了许多客户使用的ASP.Net应用程序。因为它安装在它们的末端,每个都有不同的数据库和URL绑定等我前一段时间创建了一个控制台应用程序,它获取一个zip文件并将其提取到c:\ inetpub位置以附加最新的应用程序更改。此控制台应用程序已添加到计划任务中以创建自动更新。
显然,当有人第一次访问该网站后,他们必须等待一段时间,同时网站重建。我更改了控制台应用程序以包含Process.Start(urlofapp),因此它应该有希望在更新过程中执行此操作,以便第二天早上第一个用户不必等待重建。
我已经测试过它可以正常运行但尚未发布,因为我担心这个url进程会保持打开状态。任何人都可以告诉我这是否会是这种情况,因为我不希望这种情况发生,或者可以给我任何关于如何手动重建网站作为控制台应用程序的一部分的想法。
答案 0 :(得分:0)
IIS已经有了一段时间的自动启动应用功能。你只需要启用它。您可以从the Gu和the IIS site找到更多信息。
答案 1 :(得分:-2)
更安全的是使用在后台加载服务器上所有内容的起始页。如果你在异步方法中执行此逻辑,而async方法又是从MVC控制器调用的,那么这可能会在主页面完成时运行。或者使用线程任务并显示仅在设置发生时返回的开始页面。