private async Task<HomePageViewModel> GetHomePageViewModel(WebSiteManagementClient client)
        {
            var viewModel = new HomePageViewModel();

            var listWebSpacesResponse = await client.WebSpaces.ListAsync();

            foreach (var webSpace in listWebSpacesResponse.WebSpaces)
            {
                viewModel.WebSpaces.Add(new WebSpaceListItem
                {
                    GeoRegion = webSpace.GeoRegion,
                    WebSpaceName = webSpace.Name
                });
            }

            return viewModel;
        }
예제 #2
0
        private static HomePageViewModel GetHomePageViewModel(WebSiteManagementClient client)
        {

            var viewModel = new HomePageViewModel();

            var webSpaceFunc = new Action<WebSpacesListResponse.WebSpace>((x) =>
            {
                viewModel.WebSpaces.Add(new WebSpaceListItem
                {
                    GeoRegion = x.GeoRegion,
                    WebSpaceName = x.Name
                });
            });

            var webSiteListFunc = new Action<WebSpacesListResponse.WebSpace>((webSpace) =>
            {
                var webSitesInWebSpace = client.WebSpaces.ListWebSites(
                    webSpace.Name,
                    new WebSiteListParameters
                    {
                        PropertiesToInclude = new List<string>()
                    });

                viewModel.WebSites = webSitesInWebSpace.WebSites.Select(s => new WebSiteRowItem
                {
                    WebSpace = viewModel.WebSpaces.First(a => a.WebSpaceName == webSpace.Name),
                    WebSiteName = s.Name,
                    DomainNames = s.HostNames.ToList()
                }).ToList();
            });

            var listWebSpacesResponse = client.WebSpaces.List();

            listWebSpacesResponse.WebSpaces.ToList().ForEach(x =>
            {
                webSpaceFunc(x);
                webSiteListFunc(x);
            });

            return viewModel;


        }