public async Task <IActionResult> Index(int?id) { var currentSite = await GetCurrentSiteAsync(); var userWardrobe = await _dynamicAvatarService.GetUserWardrobeAsync(); if (userWardrobe?.Count > 0) { DynamicAvatarJsonModel model = new DynamicAvatarJsonModel(); model.Layers = _mapper .Map <ICollection <DynamicAvatarJsonModel.DynamicAvatarLayer> >(userWardrobe); DynamicAvatarViewModel viewModel = new DynamicAvatarViewModel() { Layers = userWardrobe, GroupIds = userWardrobe.Select(_ => _.GroupId).Distinct(), DefaultLayer = userWardrobe.Where(_ => _.DefaultLayer).Select(_ => _.Id).First(), ImagePath = _pathResolver.ResolveContentPath($"site{currentSite.Id}/dynamicavatars/"), AvatarPiecesJson = Newtonsoft.Json.JsonConvert.SerializeObject(model) }; return(View("DynamicIndex", viewModel)); } else { return(RedirectToAction("Index", "Home")); } }