First, you need to add a key/value to your web.config
file, so you can turn the maintenance mode ON or OFF.
<add key="MaintenanceMode" value="false"/> <!-- true/false -->
Then put this code block in the
of the Global.asax
void Application_BeginRequest(object sender, EventArgs e)
if (ConfigurationManager.AppSettings["MaintenanceMode"] == "true")
Now if you set the "
" key in the config
, all the requests from the remote clients will be redirected to the maintenance.aspx
page, but the requests from local client will be served normally.
Also if you want to make the application available for certain IPs (to test the application from different machines or restrict the usage to them only), you may include their IPs in the web config and add this to your code:
if (!Request.IsLocal && !allowedIPs.Contains(Request.UserHostAddress))
I hold a BS degree in software engineering and am a Microsoft Certified Solution Developer(MCSD).
I have more than 8 years of experience in .NET developement, mostly web develop using C# and ASP.NET.