public WebSiteOverViewViewModel(string name, IisInformationController controller) { if(string.IsNullOrWhiteSpace(name)) throw new ArgumentException("name"); if (controller == null) throw new ArgumentNullException("controller"); Name = name; NumberOfApplications = controller.ListApplicaitonsForWebSite(name).Count; AppPoolName = controller.GetWebSite(name).ApplicationDefaults.ApplicationPoolName; }
public static IList<ApplicationOverVewViewModel> Get(string websiteName, IisInformationController controller) { Site webSite = controller.GetWebSite(websiteName); if(webSite == null) throw new ArgumentOutOfRangeException("websiteName"); return webSite.Applications.Select(app => new ApplicationOverVewViewModel() { Path = app.Path, AppPoolName = app.ApplicationPoolName, EnabledProtocols = app.EnabledProtocols, ParentWebsite = websiteName }).ToList(); }