public static bool IsApplicationPoolRunning([NotNull] ApplicationPool appPool)
{
Assert.ArgumentNotNull(appPool, "appPool");
return appPool.WorkerProcesses.Count > 0 && appPool.WorkerProcesses.Any(wp => wp != null && wp.State == WorkerProcessState.Running);
}