如何将Web服务置于维护模式?如何将IIS Web服务置于维护模式?
我试过app_offline.htm
,似乎不适合web服务。虽然可以用于网站。
app_offline.htm
适用于网站,但不适用于网络服务。当我通过代码维护(将app_offline.htm
置于IIS Web服务的根目录下)的代码中调用Web服务功能时,我仍像往常一样得到正确的响应。
理想情况下,我希望维护中的Web服务返回一条消息,如“正在维护”。
如何将Web服务置于维护模式?如何将IIS Web服务置于维护模式?
我试过app_offline.htm
,似乎不适合web服务。虽然可以用于网站。
app_offline.htm
适用于网站,但不适用于网络服务。当我通过代码维护(将app_offline.htm
置于IIS Web服务的根目录下)的代码中调用Web服务功能时,我仍像往常一样得到正确的响应。
理想情况下,我希望维护中的Web服务返回一条消息,如“正在维护”。
您可以按照this answer to another question的建议编辑您的Global.asax。然后通过在维护模式下设置一个标志来触发它
在我看来,当一项服务不可用时,您应该回复一个服务不可用状态;但你可以做任何你喜欢的回应。
为您的Web服务创建实用程序功能,该功能会根据您网站的根路径检查app_offline.htm
的存在并做出相应响应。
请注意,如果您想使用它,可以使用WCF管道的一部分(假设您使用WCF而不是旧的.ASMX服务)通过使用属性来修改您的服务/方法(例如,this method)。
我喜欢这个答案,但一个警告是,这需要(我认为)ASP.Net兼容模式。 – McGarnagle 2013-04-26 21:31:10
谢谢,global.asax很好地工作。 – sakraycore 2013-05-09 23:33:52